MySQL - Perintah Query Untuk Mencari Record Yang Tidak Ada Di Tabel Lain PDF
MySQL - Perintah Query Untuk Mencari Record Yang Tidak Ada Di Tabel Lain PDF
Net
1 http://achmatim.net/2009/12/09/pengenalan-perintah-dasar-sql-di-mysql/
2 http://achmatim.net/2010/01/18/perintah-mysql-untuk-menampilkan-data-dari-beberapa-tabel/
Halaman 1 dari 5
MySQL: Perintah Query untuk Mencari Record yang Tidak Ada di Tabel Lain | Achmatim.Net
Perintah SQL untuk membuat dan mengisi data pada struktur basis data di atas dapat
diunduh di http://achmatim.net/_downloads/dbperpustakaan.sql.
3 http://achmatim.net/2010/01/18/perintah-mysql-untuk-menampilkan-data-dari-beberapa-tabel/
Halaman 2 dari 5
MySQL: Perintah Query untuk Mencari Record yang Tidak Ada di Tabel Lain | Achmatim.Net
batas akhir pengembalian. Untuk melakukan hal tersebut, kita perlu menggabungkan 3
(tiga) buah tabel sekaligus yaitu tabel (1) anggota, (2) peminjaman dan (3) pengembalian.
Kita akan menampilkan data yang ada di tabel peminjaman namun belum ada di tabel
pengembalian.
Perhatikan perintah query sebagai berikut. Antara tabel anggota dan peminjaman dilakukan
INNER JOIN sedangkan antara peminjaman dan pengembalian dilakukan LEFT JOIN karena
terdapat kemungkinan data di peminjaman tidak ada di tabel pengembalian. Jika ingin
menampilkan data peminjaman yang belum kembali cukup menambahkan kondisi dimana
ID pinjam di tabel pengembalian masih kosong (NULL).
Cara lain untuk menyelesaikan permasalahan yang sama adalah dengan menggunakan
sub-query atau sub-select. Cara kedua ini tidak memerlukan join dengan tabel
pengembalian.
Kedua query di atas akan menampilkan hasil yang sama, namun demikian query 1 yang
menggunakan JOIN lebih disarankan karena memiliki performa / kecepatan yang lebih baik.
Beberapa sumber menyatakan bahwa query JOIN lebih baik dari SUBQUERY dari sisi
performa, diantaranya salah satu diskusi di situs StackOverflow ini 4.
Berikut ini hasil dari perintah query diatas.
4 http://stackoverflow.com/questions/3856164/sql-joins-vs-sql-subqueries-performance
Halaman 3 dari 5
MySQL: Perintah Query untuk Mencari Record yang Tidak Ada di Tabel Lain | Achmatim.Net
serta tabel terkait buku dan copy buku. Dengan kata lain, kita perlu menggabungkan semua
tabel pada Gambar 1.
Perhatikan dan pahami query 3 berikut ini.
Kesimpulan
Tutorial ini menjelaskan secara singkat mengenai bagaimana perintah query untuk mencari
record atau data yang ada di suatu tabel namun tidak ada di tabel yang lainnya. Dalam
tutorial ini dicontohkan kasus sistem informasi perpustakaan. Solusi permasalahan dapat
menggunakan query dengan penggabungan LEFT JOIN dan query dengan SUB-SELECT atau
SUBQUERY. Keduanya dapat digunakan namun lebih disarankan menggunakan LEFT JOIN
karena lebih baik secara performa.
Download
• Tutorial ini dapat dibaca dan diunduh secara online di
http://achmatim.net/2013/05/19/mysql-perintah-query-untuk-mencari-record-yang-tidak
-ada-di-tabel-lain/
Semoga tutorial ini bermanfaat untuk kita semua dan berbagilah hal baik ke
sebanyak-banyaknya orang maka kebahagiaan akan menghampiri Anda. Satu Karya untuk
Indonesia!
Referensi Terkait
• Buku Gratis MySQL: Dari Pemula Hingga Mahir.
http://achmatim.net/buku-gratis/mysql-5-dari-pemula-hingga-mahir/
Halaman 4 dari 5
MySQL: Perintah Query untuk Mencari Record yang Tidak Ada di Tabel Lain | Achmatim.Net
Tentang Penulis
Achmad Solichin. Adalah Lulusan Teknik Informatika, Fakultas Teknologi
Informasi, Universitas Budi Luhur, Jakarta (S1, 2005) dan Magister Teknologi
Informasi, Universitas Indonesia (S2, 2010). Saat ini sedang menempuh
program Doktoral dalam bidang Ilmu Komputer di Universitas Gadjah Mada,
Jogjakarta. Kegiatan sehari-hari adalah sebagai Dosen di Universitas Budi
Luhur (http://www.budiluhur.ac.id). Kegiatan lain aktif sebagai programmer,
web developer, system analyst, konsultan dan memberikan pelatihan di
berbagai bidang komputer serta membuat tutorial-tutorial praktis di bidang
komputer. Penulis memiliki situs utama di http://achmatim.net yang berisi berbagai tutorial
praktis di bidang komputer serta menyediakan buku gratis komputer. Penulis dapat
dihubungi melalui email di achmad.solichin@budiluhur.ac.id dan achmatim@gmail.com, YM
achmatim, Facebook achmatim dan Twitter @achmatim.
Lisensi Dokumen
Seluruh isi dalam dokumen ini dapat digunakan, dimodifikasi dan
disebarluaskan secara bebas untuk tujuan pendidikan, pembelajaran dan
bukan komersial (non profit), dengan syarat tidak menghilangkan, menghapus atau
mengubah atribut penulis dokumen ini dan pernyataan dalam lisensi dokumen yang
disertakan di setiap dokumen. Tidak diperbolehkan mengkomersialkan tutorial ini kecuali
mendapatkan ijin terlebih dahulu dari penulis.
Halaman 5 dari 5