KODE CHATBOX

Powered by : Rumah Technology

4.01.2012

BAB 4


Tujuan:
1.     Menggunakan Bahasa SQL dengan dua tabel atau lebih

Menggabungkan Dua Tabel atau Lebih
Jika kita memperhatikan tabel buku, maka disitu hanya ada field id_buku, id_judul, no_urut, dan referensi. Bagaimana untuk mengetahui judul bukunya? Sedangkan judul ada di tabel yang lain. Terkadang atau bahkan sering, kita memang akan bekerja dengan dua tabel atau lebih. Kalau kita menggabungkan dua tabel atau lebih, seperti permasalahan di atas hanya menyebut field beserta tabel-tabel yang digunakan, misalnya perintah berikut:

select id_judul,judul,no_urut from buku,judul_buku;

maka akan ditampilkan kesalahan

ERROR 1052: Column: 'id_judul' in field list is ambiguous

Jika kebetulan nama field id-nya berbeda, atau perintah yang digunakan adalah:
select buku.id_judul,judul,no_urut from buku,judul_buku;
maka akan ditampilkan data sebanyak jumlah data buku * jumlah data judul buku, yaitu dengan menghubungkan tiap id_judul di tabel buku dengan judul yang ada di tabel judul_buku.
Jika yang diinginkan adalah data yang bertepatan, yaitu data id_judul yang ada di tabel buku dihubungkan dengan id_judul yang sama yang ada di tabel judul buku, maka perintahnya:

SELECT buku.id_judul,judul,no_urut FROM buku,judul_buku
    -> WHERE buku.id_judul=judul_buku.id_judul;

atau

SELECT buku.id_judul,judul,no_urut
    -> FROM buku INNER JOIN judul_buku
    -> ON buku.id_judul=judul_buku.id_judul;

Menampilkan data judul, nama penerbit dan nama pengarangnya

SELECT judul, penerbit, nama
FROM judul_buku
INNER JOIN penerbit ON judul_buku.id_penerbit = penerbit.id_penerbit
INNER JOIN pengarang ON judul_buku.kd_pengarang = pengarang.id_pengarang;

SELECT judul, penerbit
FROM judul_buku
INNER JOIN penerbit ON judul_buku.id_penerbit = penerbit.id_penerbit;

SELECT judul, penerbit
FROM judul_buku
LEFT JOIN penerbit ON judul_buku.id_penerbit = penerbit.id_penerbit;

SELECT judul, penerbit
FROM judul_buku
RIGHT JOIN penerbit ON judul_buku.id_penerbit = penerbit.id_penerbit;

Perhatikan perbedaan ketiga perintah terakhir di atas beserta hasilnya, dan simpulkan.
Cobalah untuk menghapus data penerbit 'Andi offset' yang ada di tabel penerbit
Kemudian ulangi ketiga perintah di atas
Perhatikan perbedaan perubahan hasil ketiga perintah terakhir di atas beserta hasilnya, dan simpulkan.


0 komentar:

Posting Komentar

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Best Web Hosting