Soal no 1 udah nah nie soal no 2... kayaknya lumayan nih...bakal 2x posting kayaknya.... Soal no 2 intinya begini : > Disini terdapat 4 tabel yang diletakkan pada sebuah database dan di dalam masing-masing tabel ada primary key na.
Tabel pertama diberi nama "Supplier" berisi code supplier (c_supp), nama supplier (n_supp) dan alamat supplier (a_supp). Pada tabel pertama ini primary key na adalah code supplier (c_supp).
Tabel kedua diberi nama TMpembelian isinya ada i_beli, d_beli, c_supp, e_keterangan dengan primary key na i_beli
Tabel ketiga diberi nama TMpembeliandetil isinya ada i_beli, c_barang, q_beli, c_satuan, v_harga dengan primary key na i_beli dan c_barang
Tabel keempat diberi nama TMbarang isinya ada c_barang, n_barang dan n_barang dengan primary key na c_barang
Soalnya:
Keluarkan data i_beli, n_supp, c_barang, n_barang, q_beli, c_satuan, v_harga
Keluarkan data pembelian yang q_beli na terbesar
Keluarkan data pembelian yang q_beli na terkecil
Jawab:
1. Sebenernya rada susah nih...yang bisa keluar cuma i_beli, c_supplier, c_barang dan n_barang. Gimana yah biar bisa keluar semuanya yang ada pada soal. Ya udah ni usaha ku yang udah butek bgt bu...
#select i_beli, c_supplier, c_barang, n_barang from tm_pembelian, supplier, tm_barang
nah ni hasilnya :
2. Nah lo soal yang ini referensi dari buku...Basis Data karangan Fathansyah. # select max(q_beli) from tm_pembelian_detil;
3. Begitu juga yang ini bu....referensi na dari buku yang sama. # select min(q_beli) from tm_pembelian_detil;
ahhh....sebel nih? di upload na LOLA (loading lama)bgt. Maf ya bu gambar na gak bisa ditampilin? bis na LOLA bgt ci? nah ni lanjutan dari postgres na...
NULL Handling SELECT * FROM friend ORDER BY age; SELECT * FROM friend WHERE age > 0 ORDER BY age DESC; SELECT * FROM friend WHERE age <> 99 ORDER BY age DESC;
SELECT * FROM friend WHERE age IS NULL ORDER BY age DESC;
NULL Handling(2)
INSERT INTO friend VALUES ('Jack', 'Burger', NULL, NULL, 27);
CREATE TABLE account ( name CHAR(20), balance NUMERIC(16,2) DEFAULT 0, active CHAR(1) DEFAULT 'Y', created TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
INSERT INTO account (name) VALUES ('Federated Builders');
SELECT * FROM account;
Coloum Table
A. Memberi nama kolom pada hasil query
SELECT firstname AS buddy FROM friend ORDER BY buddy;
B. Melakukan komputasi pada kolom
SELECT 1 + 3 AS total;
C. Membuat Komentar
-- a single line comment test=> /* a multiline
Menggunakan AND dan OR
SELECT * FROM friend WHERE firstname = 'Sandy' AND lastname = 'Gleason';
SELECT * FROM friend WHERE state = 'NJ' OR state = 'PA' ORDER BY firstname;
RANGE OF VALUES
SELECT * FROM friend WHERE age >= 22 AND age <= 25 ORDER BY firstname;
SELECT * FROM friend WHERE age BETWEEN 22 AND 25 ORDER BY firstname;
LIKE COMPARISON
SELECT * FROM friend WHERE firstname LIKE 'D%' ORDER BY firstname;
CASE CLAUSE
SELECT * FROM friend WHERE firstname ~ '^S' ORDER BY firstname;
SELECT * FROM friend WHERE firstname ~ '^.e' ORDER BY firstname;
CASE CLAUSE(2)
-- firstname contains b, B, c, or C SELECT * FROM friend WHERE firstname ~* '[bc]' ORDER BY firstname;
-- firstname does not contain s or S SELECT * FROM friend WHERE firstname !~* 's' ORDER BY firstname;
CASE Clause Example
SELECT firstname, age, CASE WHEN age >= 21 THEN 'adult' ELSE 'minor' END FROM friend ORDER BY firstname;
DISTINCT PREVENTS duplicates
SELECT state FROM friend ORDER BY state;
DISTINCT ROW(Complex case Example)
SELECT firstname, state, CASE WHEN state = 'PA' THEN 'close' WHEN state = 'NJ' OR state = 'MD' THEN 'far' ELSE 'very far' END AS distance FROM friend ORDER BY firstname;
DISTINCT PREVENT DUPLICATES
SELECT state FROM friend ORDER BY state;
SELECT DISTINCT state FROM friend ORDER BY state;
FUNCTION AND OPERATION
A. Function
\df
\df int
\df upper
\dd upper
select upper('jacket');
B. Operation
\do
\do /
\do ^
\dd ^
DATE STYLE.....
Untuk perintah yang ada pada date ini mohon maaf sekali tidak bisa di coba pada postgres...gak tau kenapa error melulu...kayaknya emang gak mau di coba...tapi biar pada tau ajah ni script na...
> SHOW DATESTYLE;
NOTICE: DateStyle is ISO with US (NonEuropean) conventions SHOW VARIABLE
> SET DATESTYLE TO 'SQL, EUROPEAN';
SET VARIABLE
> SHOW DATESTYLE;
NOTICE: DateStyle is SQL with European conventions SHOW VARIABLE
> RESET DATESTYLE;
RESET VARIABLE
> SHOW DATESTYLE;
NOTICE: DateStyle is ISO with US (NonEuropean) conventions SHOW VARIABLE
duh...buanyak bgt nih dasar-dasar na..??buanyak juga ganbar na...jadi (buat bu ai rosita) maf ya maybe gambar na g semua na bisa dimasukkin...soalnya susah bgt??met capek ajah buat yg baca ntar...(khusus na bu ai rosita). Sengaja gak dikasih keterangan apa-apa(sebagian ajah yang dikasih keterangan) biar buat yang baca bisa lebih ngerti dengan praktek na...???
mulai dari buat database mpe fungsi-fungsinya ada semuanya....
Baiklah kita akan mulai untuk membuatnya. pertama kita membuat database na dulu. Sperti di artikel sebelumnya jadi pasti udah pada tau kan...sekarang kita anggap database na udah dibuat yach....database yang kita buat adalah dengan nama "friend".
Membuat Tabel A. Membuat Tabel
create table friend(firstname char(15), lastname char(20), city char(15), state char(2), age integer);
B. Melihat stuktur tabel yang sudah dibuat
\d friend
Insert Data ke tabel Setelah tabel dibuat maka langkah selanjutnya adalah memasukkan data ke dalam tabel. Berikut adalah langkah2nya:
A. Memasukkan data ke dalam database friend
insert into friend values ('mike', 'nichols', 'tampa', 'FL', 19);
Masukkan data sebanyak mungkin yang anda mau (ehehhheh). kalo saya masukkin na sesuai dengan yang ditugaskan ajah...kayak digambar dibawah ini...
B. Melihat data yang sudah ada ditabel
select * from friend;
Melihat baris yang spesifik dengan perintah WHERE Perintah where ini dapat digunakan untuk menunjuk baris yang kita inginkan. Misalnya ajah kayak contoh-contoh dibawah ini:
A. Membuat daftar teman yang berumur 23 tahun
select * from friend where age = 23;
hasilnya kayak gini nih... Pokoknya cara menggunakan perintah where ini cara na gini...
select * from [nama database] where [yang akan dicari];
B. Menghasilkan single cell
select lastname from friend where age = 22;
C. Menghasilkan blok cell select city, state from friend where age >= 21;
D. Membandingkan colom firstname dengan string tertentu 'Sam'
select * from friend where firstnama = 'sam';
Menghapus baris tertentu Pastinya selain memasukkan data kita juga ingin database kita bisa menghapus data-data yang sudah tidak gunakan. Berikut langkahnya :
delete from [nama database] where [yang akan dihapus];
contoh:
delete from friend where lastname = 'barnes';
Update isi tabel
update friend set age = 20 where firstname = 'mike';
Perintah diatas bisa artinya yang bernama mike umurnya akan di-update menjadi 20 tahun.
Menggunakan perintah Order By A. Perintah Order By Langkahnya sebagai berikut:
select * from [nama database] ordey by [yang akan di order];
select * from friend order by state;
B. Reserve By Order Langkahnya sebagai berikut:
select * from [nama database] ordey by [yang akan di order] DESC;
select * from friend order by age DESC;
C. Menggunakan Order By dan Where Langkahnya sebagai berikut:
select * from [nama database] where [yang akan dicari] ordey by [yang akan di order];
select * from friend where age >= 23 order by firstname;
huh....bingung bgt temen-temen banyak yang konflik neh? mana yang bener yah...tugas yang ini apa yang lain. ahhh....pokok na kerjain ajah... Di bawah ini adalah kerjaan aQu...tentang tugas di papan tulis yang pertemuan kemarin di bahas.
Membuat Database tentang Mahasiswa dan Nilai na...
Langkah awal na kita harus membuat database terlebih dahulu. Lo saya buat tiga database yaitu mahasiswa, mat_kul(mata kuliah) dan nilai. Berikut adalah langkah-langkahnya :
A. Membuat Database Mahasiswa
CREATE DATABASE mahasiswa;
Selanjutnya kita membuat tabel di dalam database mahasiswa tersebut.
CREATE TABLE mahasiswa(NPM INTEGER NOT NULL, Nama VARCHAR(30), PRIMARY KEY(NPM));
Setelah itu kita isi tabel yang sudah kita buat.
INSERT INTO mahasiswa (NPM, Nama) VALUES (19289, 'Aditia Darmawan');
Nah untuk isi dari database bisa ditambahkan lagi sesuai kebutuhan.hehehehe....Lo yang aQu buat ada di bawah ini nih... Selanjutnya jika database yang kita buat sudah terisi oleh data-data sekarang kita lanjut ke langkah selanjutnya yaitu membuat database baru sebagai tempat untuk mata kuliah.
B. Membuat Database Mata Kuliah
CREATE DATABASE mat_kul;
Selanjutnya kita buat tabel di dalam database mata kuliah.
INSERT INTO mat_kul (kd_mk, mat_kul) VALUES ('A10', 'Matematika Diskrit');
Nah untuk isi dari database bisa ditambahkan lagi sesuai kebutuhan.hehehehe....Lo yang aQu buat ada di bawah ini nih... C. Membuat Database Nilai Nah disinilah relasional yang aQu buat. Jadi kedua tabel tadi di relasionalkan di tabel nilai ini. Sebelum membuat relasional kita buat terlebih dahulu database nilai.
CREATE DATABASE nilai;
Kemudian kita buat tabel di dalam database nilai tersebut.
CREATE TABLE nilai (NPM INTEGER NOT NULL REFERENCES mahasiswa, kd_mk VARCHAR(10) REFERENCES mat_kul, nilai VARCHAR(5), PRIMARY KEY (NPM, kd_mk));
Nah setelah tabel sudah jadi sama seperti perintah sebelumnya kita isi tabel tersebut dengan perintah di bawah ini :
INSERT INTO nilai(NPM, kd_kul, nilai) VALUES (19289, 'A10', 'A');
nah hasilnya akan menjadi seperti gambar dibawah ini.
Soal...
1. Buatlah NPM mahasiswa yang memiliki nilai 'A' Jawab...
Untuk mengerjakan soal diatas dapat menggunakan script di bawah ini.
SELECT NPM FROM nilai where nilai='A';
Hasilnya akan ditampilkan beberapa NPM yang memiliki nilai A.
2. Buatlah NPM mahasiswa yang mengambil mata kuliah 'Matematika Diskrit' Jawab...
SELECT NPM FROM nilai where kd_mk='A10';
Hasilnya akan ditampilkan NPM mahasiswa yang mengambil mata kuliah matematika diskrit. Keterangan: kd_mk='A10' menunjukkan bahwa A10 adalah kode dari matematika diskrit.
Postgres apa yah...???postgres atau yang lebih dikenal dengan sebutan PostgresSQL yaitu merupakan salah satu database yang menawarkan banyak kelebihan seperti keluwesan dalam penggunaan, kinerja yang tinggi dan lain lain.
Sekarang kita akan membuat sebuah database menggunakan postgres. Dimisalkan postgres sudah terinstal di komputer kita dan sekarang kita akan membuat databasenya.
A. Membuat Database Kita dapat membuat database dengan menjalankan script dibawah ini:
CREATE DATABASE rab;
B. Membuat Table Untuk memudahkan kita melihat isi dari database yang kita buat maka kita gunakan tabel. cara membuat tabel gunakan perintah di bawah ini:
CREATE TABLE pegawai (id INTEGER NOT NULL, nama VARCHAR(30), PRIMARY KEY (id));
Keterangan: INTEGER : merupakan type data yang digunakan untuk menampilkan angka. NOT NULL : menunjukkan suatu perintah yang artinya jika suatu field bertipe NOT NULL maka didalam penngisian harus diisi karena jika tidak diisi maka proses akan dihentikan.
VARCHAR : merupakan type data yang digunakan untuk menampilkan karakter. PRIMARY KEY : merupakan perintah yang menunjukkan "id" sebagai kunci.
C. Memberi isi ke dalam tabel Seperti yang kita ketahui di dalam sebuah tabel pasti terdapat data. Untuk memberikan isi kedalam tabel dapat digunakan perintah di bawah ini:
INSERT INTO pegawai (id, nama) VALUES (190290, 'Joko Sukarno');
D. Melihat hasil Setelah kita membuat tabel dan mengisi tabel yang kita buat sekarang kita akan melihat hasil tabel yang telah kita buat. Ketikkan script di bawah ini :
SELECT * FROM pegawai;
E. Memanipulasi Struktur Table Untuk memanipulasi tabel kita tidak perlu menghapus tabel yang telah kita buat. Kita dapat menggunakan perintah ALTER TABLE. Misalnya saja kita akan menambahkan field "tgl_lahir". maka gunakan perintah di bawah ini:
ALTER TABLE pegawai ADD tgl_lahir DATE;
Sekarang kita dapat mengupdate tabel pegawai kita dengan menggunakan script di bawah ini :
INSERT INTO pegawai (id, nama, tgl_lahir) VALUES (190827, 'Mira Yussida', '09/09/1991');
Didalam penulisan tanggal lahir perlu diperhatikan dalam penulisan formatnya yaitu berupa "mm/dd/yyyy" yang berarti "mm" yaitu bulan, "dd" yaitu tanggal dan "yyyy" yaitu tahun.
F. Membuat Relasional (hubungan antar tabel) Didalam sebuah database pasti akan selalu berhubungan. Tentunya antara tabel A dan tabel B pasti saling terkait. Untuk membuat relasional kita harus mempunyai sedikitnya mempunyai dua buah tabel. Di awal kita sudah mempunyai satu buah tabel yaitu tabel pegawai, nah sekarang kita akan membuat sebuah tabel lagi, misalnya tabel anak. Untuk membuat tabel anak kita gunakan perintah di bawah ini:
CREATE TABLE anak (id_pegawai INTEGER NOT NULL REFERENCES pegawai, nama VARCHAR(30) NOT NULL, tgl_lahir DATE, PRIMARY KEY (id_pegawai, nama));
Kata REFERENCES pegawai untuk field id_pegawai menunjukkan bahwa nilai yang ada pada field tersebut dipastikan terdapat pada field primary key pada tabel pegawai. Sekarang kita akan memberikan isi pada tabel anak.
INSERT INTO anak (id_pegawai, nama, tgl_lahir) VALUES (190290, 'Karyadi Subakti', '06/07/1994');
G. Membuat Laporan Yang dimaksud dengan laporan disini adalah kita membuat output yang datanya berasal dari tabel-tabel yang kita miliki. Dari dua buah tabel yang kita buat maka sudah bisa kita buat beberapa jenis laporan: 1. Daftar pegawai 2. Daftar pegawai yang lahir di tanggal tertentu 3. Daftar anak beserta nama pegawai yang menjadi orang tuanya 4. Daftar pegawai beserta anak-anaknya 5. Daftar pegawai yang belum memiliki anak 6. Daftar pegawai yang anaknya lebih dari satu.
G.1 Membuat Laporan Daftar Pegawai Untuk membuat laporan daftar pegawai dapat menggunakan perintah di bawah ini: