Pada pertemuan minggu ini, akan dibahas tentang bagaimana menampilkan data dari beberapa tabel yang
terhubung oleh suatu kunci. Buat sambungan ke server ORACLE dengan SQL * PLUS
seperti minggu lalu, dan ikuti latihan berikut
1. Buat tabel matakuliah dan tabel krs dengan tipe field :
- Tabel matakuliah terdiri dari field : kdmtk varchar(5), nm_mtk varchar(20), sks number, dan field kdmtk tidak boleh null.
- Tabel krs, dengan field : nim varchar(5), kdmtk varchar(5), nilai char(1).
2. Isi tabel matakuliah dan krs, dengan nomor mahasiswa sesuai dengan nomor mahasiswa pada tabel krs sesuai dengan yang ada di tabel mahasiswa dan kdmtk pada tabel krs sama dengan kdmtk pada tabel matakuliah. Kosongi field nilai pada tabel krs.
3. Tampilkan nama
mahasiswa yang mengambil matakuliah yang memiliki kode matakuliah ‘mt01’;
SQL>
select nama from mahasiswa, krs where mahasiswa.nim=krs.nim and
krs.kdmtk='mt01';
4. Tampilkan nama
matakuliah dan sks dari matakuliah yang diambil mahasiswa yang memiliki nomor
mahasiswa ‘1’
SQL>
select nm_mtk, sks from matakuliah, krs where matakuliah.kdmtk=krs.kdmtk and
krs.nim='1';
5. Tampilkan nama
mahasiswa yang mengambil matakuliah ‘Bahasa C’
SQL> select nama from mahasiswa,
matakuliah, krs where
mahasiswa.nim=krs.nim and
krs.kdmtk=matakuliah.kdmtk and matakuliah.nm_mtk='rpl';
GROUP BY
Klausa
GROUP BY digunakan untuk mengelompokkan data hasil perintah group function.
Ilustrasi pemakaian GROUP BY :
SQL> select matakuliah.nm_mtk,
count(krs.kdmtk) from matakuliah, krs where
matakuliah.kdmtk=krs.kdmtk
group by matakuliah.nm_mtk;
HAVING
Klausa
HAVING dipergunakan untuk membatasi hasil query yang dihasilkan dari klausa
GROUP BY.
SQL> select nama, count(sks) from
mahasiswa, krs, matakuliah
where mahasiswa.nim=krs.nim and
matakuliah.kdmtk=krs.kdmtk
group by mahasiswa.nama
having count(sks)>2;
SUBQUERY
Subquery
adalah query dalam query. Dalam menuliskan perintah select, kita dapat
mendefinisikan nilai kondisional dengan menggunakan perintah SELECT lagi.
Artinya ada perintah SELECT dalam perintah SELECT. Untuk ilustrasi, tambahkan
data mahasiswa yang nomor mahasiswanya (nim) tidak ada di tabel krs, dan
berikutnya coba perintah berikut :
SQL> select nama from mahasiswa where
nim in
(select nim from krs group by nim);
Modul Bisa di download di bawah ini
Download Modul
0 comments:
Post a Comment