Tugas Basis Data Seleksi Lebih Dari 1 Tabel
Tugas seleksi lebih dari 1 tabel ini hampir sama dengan tugas seleksi data yang kemarin tapi kali ini menggunakan lebih dari 1 tabel bisa 2, 3 maupun lebih banyak lagi. Di sini saya menggunakan 3 tabel dari database rental_mobil yang sudah saya buat sebelumnya.
Sebelum mulai samakan data yang sama seperti gambar berikut ini :
1. Tampilkan merek_mobil, kode_mobil, IDPEL
RUMUSNYA : SELECT b.merek_mobil, p.kode_mobil, a.IDPEL FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL
2. Tampilkan kode_mobil, merek_mobil, tgl_pinjam, tarif '400000'
RUMUSNYA : SELECT b.kode_mobil, b.merek_mobil, a.tgl_pinjam, a.tarif FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL AND a.TARIF='400000'
3. Tampilkan tgl_pinjam, tgl_kembali, lama_peminjaman 3 hari
RUMUSNYA : SELECT a.tgl_pinjam, a.tgl_kembali, a.lama_peminjaman FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL AND a.LAMA_PEMINJAMAN='3'
4. Tampilan kode_mobil, warna_mobil, IDPEL, tarif '300000' dan yang keterangannya belum lunas
RUMUSNYA : SELECT b.kode_mobil, b.warna_mobil, a.idpel, a.tarif, a.keterangan FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL AND a.TARIF LIKE "300000" AND a.KETERANGAN='belum lunas'
5. Tampilkan kode_mobil, merek_mobil, nama_penyewa, alamat dengan menggunakan rumus CROSS JOIN
RUMUSNYA : SELECT table_mobil.KODE_MOBIL, table_mobil.MEREK_MOBIL, table_penyewa.NAMA_PENYEWA, table_penyewa.ALAMAT FROM table_mobil CROSS JOIN table_penyewa ON table_mobil.KODE_MOBIL=table_penyewa.KODE_MOBIL
6. Tampilkan plat_mobil, merek_mobil, nama_penyewa yang di awali dengan huruf "i" dengan menggunakan rumus JOIN ON
RUMUSNYA : SELECT table_mobil.PLAT_MOBIL, table_mobil.MEREK_MOBIL, table_penyewa.NAMA_PENYEWA FROM table_mobil JOIN table_penyewa ON table_mobil.KODE_MOBIL=table_penyewa.KODE_MOBIL AND table_penyewa.NAMA_PENYEWA LIKE 'i%'
7. Tampilkan kategori_mobil, nama_penyewa dengan menggunakan rumus STRAIGHT_JOIN
RUMUSNYA : SELECT table_mobil.KATEGORI_MOBIL, table_penyewa.NAMA_PENYEWA FROM table_mobil STRAIGHT_JOIN table_penyewa ON table_mobil.KODE_MOBIL=table_penyewa.KODE_MOBIL
8. Tampilkan kode_mobil, nama_penyewa, lama_peminjaman, tarif dengan menggunakan rumus INNER JOIN
RUMUSNYA : SELECT table_mobil.KODE_MOBIL, table_penyewa.NAMA_PENYEWA, table_penyewaan.LAMA_PEMINJAMAN, table_penyewaan.TARIF FROM db_rental_mobil.table_mobil INNER JOIN db_rental_mobil.table_penyewa ON (table_mobil.KODE_MOBIL=table_penyewa.KODE_MOBIL) INNER JOIN db_rental_mobil.table_penyewaan ON (table_penyewa.IDPEL=table_penyewaan.IDPEL);
9. Tampilkan warna_mobil, merek_mobil, lama_peminjaman, tarif dengan urut berdasarkan merek_mobil
RUMUSNYA : SELECT b.warna_mobil, b.merek_mobil, a.lama_peminjaman, a.tarif FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL ORDER BY MEREK_MOBIL
10. Tampilkan plat_mobil, nama_penyewa, lama_peminjaman, keterangan yang beralamat di KALINYAMATAN
RUMUSNYA : SELECT b.plat_mobil, p.nama_penyewa, a.lama_peminjaman, a.keterangan FROM table_mobil b, table_penyewa p, table_penyewaan a WHERE b.KODE_MOBIL=p.KODE_MOBIL AND p.IDPEL=a.IDPEL AND p.ALAMAT='kalinyamatan'
Powered BY :