Seleksi Data - Bagian 2
Pengelompokan Data menggunakan GROUP BY
Penggunaan kalusa GROUP BY disertakan dalam perintah SELECT - Contoh 1
Jumlah buku yang ditampilkan dari hasil kode di atas adalah hasil dari proses pengelompokan brdasarkan penerbit (dalam hal ini kolom penerbit_id).-
Contoh 2
Pada kode di atas ditambahkan kolom penerbit_nama agar lebih jelas. -
Contoh 3
Kode terebut akan menampilkan daftar judul buku yagn dikelompokkan berdasarkan pengarang.
GROUP CONCAT() adalah fungsi agregasi yagn berguna untuk mengelompokkan baris data menjadi satu teks (string) tunggal.
Menggabungkan Data
Proses menggabungkan 2 query select menjadi 1 dengan perintah UNION dengan syarat masing-masing query select menghasilkan jumlah row data yang sama.
-
Query 1
Kode di atas akan menghasilkan 6 row data. -
Query 2
Kode tersebut menghasilkan 10 row data. -
Query 3 : Penggabungan Query menggunakan UNION
Join : Seleksi Data dari 2 Tabel atau Lebih
Seleksi data dari 2 tabel atau lebih, lebih rumit dibandingkan seleksi data dari 1 tabel. Syarat utamanya adalah adanya kolom relasi. Kolom relasi adalah kolom yang digunakan sebagai kunci untuk menghubungkan antara tabel yang satu dengan tabel yang lain.
-
Contoh 1 Seleksi data dari 2 tabel (sederhana)
Tampilkan data dari kolom buku_isbn dan buku_judul pada tabel buku dengan nama alias a, serta kolom penerbit nama pada tabel penerbit dengan nama alias b yang nilai penerbit_id nya sama. -
Contoh 2 Seleksi data yang melibatkan 4 tabel
- Contoh 3 Seleksi data Tambahan
Pengurangan dan Interseksi Data
Hal ini dilakukan untuk menyeleksi sekelompok data dari satu tabel lalu dikurangi dengan sekelompok data dari tabel lain.
- Contoh 1 : Menggunakan INNER JOIN
-
Masukkan data dulu ke tabel penerbit
-
Lihat data penerbit_id pada tabel penerbit
-
Lihat data penerbit_id pada tabel buku ditambah klausa DISTINCT
-
Lakukan interseksi data dengan query berikut
Hasil yang muncul merupakan irisan dari data query pertama dan query ke dua. -
Contoh 2 : Menggunakan MINUS / NOT IN
-
Lihat data penerbit_id pada tabel penerbit
-
Lihat data penerbit_id dari tabel buku, gunakan klausa DISTINCT
-
Lakukan pengurangan data query 1 dengan query 2
Hasilnya adalah data penerbit_id pada tabel penerbit yang tidak ada pada data penerbit_id tabel buku.
Sub-query
Subquery adalah perintah SELECT yang terdapat dalam perintah SELECT lain. Hal ini memudahkan kita untuk membuat berbagai format laporan semisal crosstab query.
- Contoh 1 Membuat query yang dapat menampilkan jumlah buku yang diterbitkan oleh masing-masing penerbit. kita akan menggunakan tabel buku dan tabel penerbit. Pada contoh tersebut perintah SELECT bagian luar digunakan untuk menyeleksi data dari tabel penerbit, sedangkan bagian dalam digunakan untuk menyeleksi data dari tabel buku.
Subquery juga biasa digunakan sebagai kolom penentu kondisi query (di bagian WHERE).
- Contoh 2 : Subquery sebagai penentu bagian WHERE Perintah di atas digunakan untuk menampilkan data pada tabel 'penerbit' (kolom 'penerbit_id' dan 'penerbit_nama') yang datanya tidak terdapat pada tabel buku.