Oleh :
B. Pendahuluan
Dalam sebuah database yang berelasional kita juga dapat menampilkan data dari dua atau
lebih tabel yang berbeda. Namun demikian apabila tabel tersebut merupakan tabel yang
saling beralasi, maka perlu teknk seleksi secara special dan khusus. Secara standar, jika ingin
menampilkan dua tabel atau lebih cukup dengan langsung meyebutkan nama tabel yang akan
ditampilkan. Namun sayang, hasil yang ditampilkan akan berbentuk pendobelan data yang
tidak sesuai dengan yang direlasikan. Bentuk umum:
2. Isi nama database sesuai dengan yang kita inginkan, kemudian klik OK.
3. Setelah membuat database baru, kita klik New Query untuk memasukkan sebuah data.
4. Langkah pertama kita buat terlebih dahulu tabel mahasiswa dengan mengetikkan bahasa
Query seperti di bawah ini. Setelah itu klik Execute.
CREATE TABLE mahasiswa
(
nim char(15) NOT NULL,
nama varchar(30) NOT NULL,
alamat varchar (100) NOT NULL,
no_hp char (12) NOT NULL,
)
5. Setelah itu membuat tabel matakuliah, dengan mengetikkan bahasa query seperti di bawah ini.
select a.namamatkul,
AVG(
case
when c.nilai='A' then 4.0
when c.nilai='B+' then 3.5
when c.nilai='B' then 3.0
when c.nilai='C+' then 2.5
when c.nilai='C' then 2.0
when c.nilai='D+' then 1.5
when c.nilai='D' then 1.0
when c.nilai='E' then 0.0 ELSE 0.0
END) AS IP_datamining
from matakuliah as a, mahasiswa as b, krs as c
where a.kdmatkul=c.kdmatkul and b.nim=c.nim and a.namamatkul='DATA MINING'
group by a.namamatkul
select d.nama_dosen,
AVG(
case
when c.nilai='A' then 4.0
when c.nilai='B+' then 3.5
when c.nilai='B' then 3.0
when c.nilai='C+' then 2.5
when c.nilai='C' then 2.0
when c.nilai='D+' then 1.5
when c.nilai='D' then 1.0
when c.nilai='E' then 0.0 ELSE 0.0
END) AS IP_dosenwayan
from matakuliah as a, mahasiswa as b, krs as c, dosen as d, jabatan_fungsional as e
where a.kdmatkul=c.kdmatkul and b.nim=c.nim and d.nama_dosen='WAYAN'
group by d.nama_dosen
Jadi penggunaan sub query, dapat mempersingkat perintah serta menggunakan fungsi
logika yang lebih mudah dipahami dari pada query biasa.