Latihan Aljabar Relasi
Tabel Tabel Sailors Tabel Reserves Tabel Boats sid sname rating age 22 Dustin 7 45.0 29 Brutus 1 33.0 31 Lubber 8 55.5 32 Andy 25.5 58 Rusty 10 35.0 64 Horatio 71 Zorba 16.0 74 9 85 Art 3 95 Bob 63.5 sid bid day 22 101 10/10/98 102 103 10/8/98 104 10/7/98 31 11/10/98 11/6/98 11/12/98 64 9/5/98 9/8/98 74 bid bname color 101 Interlake Blue 102 Red 103 Clipper Green 104 Marine Tabel Boats
Soal-soal latihan Cari nama-nama sailor yang memesan boat 103 Cari nama-nama sailor yang memesan boat warna merah Cari warna dari boat yang dipesan oleh Lubber Cari nama-nama sailor yang memesan paling sedikit satu boat Cari nama-nama sailor yang memesan boat warna merah atau hijau Cari sid dari sailor yang berumur lebih dari 20 tahun yang tidak memesan boat warna merah
Pembahasan Query: Pertama dicari baris pada tabel Reserves yang memiliki bid 103 kemudian dilakukan join dengan tabel Sailors Dapat juga menggunakan operator renaming Query: Ekuivalen dengan perintah
Pembahasan Query: Query diatas sama dengan query yang digunakan untuk mencari sailor yang memesan boat warna merah. Hasil dari query diatas adalah warna merah dan hijau Query: Query diatas menghasilkan Dustin, Horatio, Lubber. Meski 2 sailor bernama sama Horation telah memesan boat tetapi tetap ditampilkan 1. Query: Query diatas menghasilkan Dustin, Horatio, Lubber
Pembahasan Query: Query tersebut menggunakan operator set-difference. Pertama diidentifikasi sailor yang berusia lebih dari 20 tahun kemudian mengurangi dengan sailor yang memesan boat berwarna merah maka akan dihasilkan sid 29,32,58,74,85, dan 95