Anda di halaman 1dari 3

PERTEMUAN KE - 9

QUERY BANYAK TABEL

A. TUJUAN
Mahasiswa menguasai konsep-konsep utama proses query banyak tabel.

B. DASAR TEORI

Secara sederhana, melakukan query banyak tabel dapat dilakukan


dengan menyebutkan hubungan dari tabel-tabel dimaksud.

SQL mempunyai kemampuan untuk menggabungkan dua tabel atau


lebih guna mendapatkan informasi yang diinginkan, dengan proses yang
dilakukan dengan nama JOIN. Suatu operasi Join mengkombinasikan
product, selection, dan mungkin projection. Operator Join secara horisontal
mengkombinasikan / menggabungkan data dari satu baris tabel dengan
baris dari yang lain atau tabel yang sama ketika kriteria tertentu ditemukan.
Kriteria melibatkan suatu hubungan diantara kolom didalam gabungan
tabel relasional.

Salah satu contoh sintaks Join :

SELECT nama_kolom
FROM nama_tabel1, nama_tabel2, ...
WHERE PK_tabel1=FK_tabel2_dr_tabel1 AND, ...

Apabila kondisi JOIN tersebut tidak disebutkan, akan terjadi sebuah JOIN
yang dinamakan dengan CROSS JOIN, dimana setiap item data yang ada
pada tabel 1 akan dipasangkan dengan setiap data yang ada di tabel 2.

Selain kondisi JOIN, klausa WHERE dapat menampung juga kondisi lain
untuk membatasi hasil query.

C. PRAKTIK
Kerjakan praktik berikut ini.

Buatlah sebuah skema dengan nama ”dbkuliah” dengan struktur dan data
sebagai berikut.:

Tabel MHS
Field Tipe Data
NPM CHAR(8), PRIMARY KEY
Nama VARCHAR(15)
Alamat VARCHAR(15)

Tabel MKUL
Field Tipe Data
KDMK CHAR(5), PRIMARY KEY
MTKULIAH VARCHAR(15)
SKS INT(1)

Tabel NILAI
Field Tipe Data
NPM CHAR(8)
KDMK CHAR(5)
MID INT(3)
FINAL INT(3)
Dengan data-data sebagai berikut:

1. Tampilkan semua mata kuliah 2 SKS.

SELECT *
FROM MKUL
WHERE sks = 2;

2. Tampilkan para peserta yang namanya diawali huruf P.

SELECT *
FROM MHS
WHERE nama LIKE ’P%’;

3. Tampilkan nama-nama mahasiswa yang nilai MID dan FINAL-nya lebih


dari 70

SELECT nama
FROM mhs, nilai
WHERE mhs.npm=nilai.npm AND mid > 70 AND final > 70

4. Buatlah query untuk menampilkan daftar mahasiswa yang mengambil


mata kuliah Pancasila.

SELECT nama
FROM mhs, nilai, mkul
WHERE mhs.npm=nilai.npm AND mkul.kdmk=nilai.kdmk AND
mtkuliah = ’Pancasila’;

5. Buatlah query untuk menampilkan mata kuliah apa saja yang diambil
oleh Budi.

SELECT mtkuliah
FROM mhs, nilai, mkul
WHERE mhs.npm=nilai.npm AND mkul.kdmk=nilai.kdmk AND nama =
’Budi’;
6. Tampilkan nama, nama mata kuliah, dan semua nilai mahasiswa yang
berasal dari Jakarta.

SELECT nama, mtkuliah, mid, final


FROM mhs, nilai, mkul
WHERE mhs.npm=nilai.npm AND mkul.kdmk=nilai.kdmk AND Alamat
= ’Jakarta’;

D. LATIHAN
Diberikan pada saat praktikum.

E. TUGAS

Pada skema basis data pada praktik pertemuan 6, buatlah query yang
menampilkan:
1. Data semua karyawan yang tidak mendapat bonus.
2. Data semua karyawan yang tidak mendapat potongan.
3. Semua karyawan yang masuk selama 20 jam.
4. Karyawan yang berada pada periode 200807 yang mendapatkan
potongan dan mendapatkan bonus.
5. Data semua karyawan yang gajinya 1200000, lengkap dengan bonus
dan potongannya.
6. Data semua karyawan yang namanya dimulai huruf T, tampilkan juga
periode dan bonus yang didapatkannya.

Anda mungkin juga menyukai