0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Modul 6 - WHERE

Klausa WHERE digunakan untuk memfilter data berdasarkan kriteria tertentu seperti id penerbit. Klausa GROUP BY mengelompokkan data berdasarkan kolom tertentu seperti id penerbit, sedangkan fungsi agregasi seperti COUNT() digunakan untuk menghitung data yang dikelompokkan. Klausa ORDER BY digunakan untuk mengurutkan hasil query berdasarkan kolom tertentu seperti tanggal terbit.

Diunggah oleh

naylaaa
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Modul 6 - WHERE

Klausa WHERE digunakan untuk memfilter data berdasarkan kriteria tertentu seperti id penerbit. Klausa GROUP BY mengelompokkan data berdasarkan kolom tertentu seperti id penerbit, sedangkan fungsi agregasi seperti COUNT() digunakan untuk menghitung data yang dikelompokkan. Klausa ORDER BY digunakan untuk mengurutkan hasil query berdasarkan kolom tertentu seperti tanggal terbit.

Diunggah oleh

naylaaa
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 4

8.4.

WHERE
Pada contoh sebelumnya kita telah belajar bagaimana mengambil data dari
database. Dalam praktek, kita sering mengambil data berdasarkan kriteria
tertentu, misal berdasarkan penerbit, pengarang, tahun terbit, dll. Untuk
keperluan tersebut, kita gunakan klausa WHERE

Contoh penggunaan klausa WHERE:

1. SELECT judul
2. FROM buku1
3. WHERE id_penerbit = 4

Hasil yang kita peroleh:


+------------------------------------+
| judul |
+------------------------------------+
| Desain Grafis dengan Powerpoint |
| MySQL Untuk Pemula |
| Kumpulan Aplikasi PHP untuk Pemula |
+------------------------------------+

Pada contoh diatas, kita hanya menampilkan judul buku yang memiliki
id_penerbit 4.

8.5. GROUP BY
Klausa GROUP BY digunakan untuk mengelompokkan data berdasarkan
kolom tertentu, misal mengelompokkan data buku berdasarkan
id_penerbit. Klausa ini harus digunakan bersama fungsi agregasi seperti
COUNT() dan SUM(), karena untuk kolom yang tidak di kelompokkan, akan
diambil hanya satu data, perhatikan query berikut:

1. SELECT id_penerbit, judul


2. FROM buku1
3. GROUP BY id_penerbit

114 BAB 8 Syntax Dasar Pengambilan Data


Hasil yang kita peroleh:
+-------------+----------------------------------------+
| id_penerbit | judul |
+-------------+----------------------------------------+
| 1 | Pemrograman Database Menggunakan MySQL |
| 4 | MySQL Untuk Pemula |
+-------------+----------------------------------------+

Dari hasil diatas terlihat bahwa data dikelompokkan berdasarkan


id_penerbit yaitu 1 dan 4, namun pada kolom judul, data yang diambil
hanya satu, yaitu hanya baris pertama dari masing masing id_penerbit.

Dengan fungsi agregasi, kita dapat memperoleh berbagai informasi terkait


data yang dikelompokkan, misal menghitung jumlah buku yang diterbitkan
oleh masing masing penerbit, contoh:

1. SELECT id_penerbit, COUNT(judul)


2. FROM buku1
3. GROUP BY id_penerbit

Hasil:
+-------------+--------------+
| id_penerbit | COUNT(judul) |
+-------------+--------------+
| 1 | 3 |
| 4 | 2 |
+-------------+--------------+

Dari hasil diatas diketahui bahwa terdapat 3 buku yang diterbitkan oleh
penerbit dengan id_penerbit 1, dan 2 buku oleh penerbit dengan
id_penerbit 4.

MySQL menyediakan berbagai fungsi agregasi. Fungsi ini dibahas lebih


lanjut pada BAB 12 Function. Pada bab bab selanjutnya Anda akan
menemukan berbagai variasi penggunaan klausa GROUP BY.

Panduan Lengkap Query MySQL 115


8.6. ORDER BY
Sejauh ini, kita telah berhasil menampilkan data dari database
menggunakan kriteria tertentu. Jika kita perhatikan, urutan data yang
ditampilkan sama persis dengan dengan urutan yang ada di dalam tabel
database. Untuk keperluan tertentu, misal menampilkan data berdasarkan
publikasi terbaru, maka kita perlu untuk mengubah urutan data tersebu,
untuk mengurutkan data berdasarkan kolom tertentu, gunakan klausa
ORDER BY. Contoh penggunaan ORDER BY:

1. SELECT id_buku, judul, tgl_terbit


2. FROM buku1
3. WHERE id_penerbit = 1
4. ORDER BY tgl_terbit DESC

Hasil yang kita peroleh:


+---------+-----------------------------------------+------------+
| id_buku | judul | tgl_terbit |
+---------+-----------------------------------------+------------+
| 1 | Pemrograman Database Menggunakan MySQL | 2016-00-00 |
| 2 | PHP dan MySQL Langkah Demi Langkah + CD | 2016-00-00 |
| 5 | Mahir Dalam 7 Hari: Coreldraw X6 | 2013-00-00 |
+---------+-----------------------------------------+------------+

Pada contoh diatas, kita menggunakan opsi DESC (descending) untuk


mengurutkan data dari yang terbesar ke terkecil, jika kita tidak
memberikan opsi apa-apa, secara default, MySQL akan mengurutkannya
secara ascending (atau dengan opsi ASC).

Selain dapat mengurutkan data dengan kriteria satu kolom, kita juga dapat
mengurutkan data dengan kriteria lebih dari satu kolom. Pada model
pengurutan ini, data akan diurutkan mulai dari kolom paling kiri yang ada
pada klausa ORDER BY, misal kita urutkan data berdasarkan tanggal terbit
dan judul, jalankan query berikut:

1. SELECT id_buku, judul, tgl_terbit


2. FROM buku1
3. WHERE id_penerbit = 1
4. ORDER BY tgl_terbit DESC, judul DESC

116 BAB 8 Syntax Dasar Pengambilan Data


Hasil:
+---------+-----------------------------------------+------------+
| id_buku | judul | tgl_terbit |
+---------+-----------------------------------------+------------+
| 1 | Pemrograman Database Menggunakan MySQL | 2016-00-00 |
| 2 | PHP dan MySQL Langkah Demi Langkah + CD | 2016-00-00 |
| 5 | Mahir Dalam 7 Hari: Coreldraw X6 | 2013-00-00 |
+---------+-----------------------------------------+------------+

Penjelasan:

Pada contoh diatas, setelah MySQL mengurutkan data berdasarkan tanggal


terbit secara descending, selanjutnya, karena terdapat data dengan
tgl_terbit yang sama, yaitu pada id_buku 1 dan 2, maka data akan
diurutkan lagi berdasarkan kolom judul. Jika pada kolom pertama tidak
ada data yang sama, maka tidak dilakukan pengurutan pada kolom kedua,
misal:

1. SELECT id_buku, judul, tgl_terbit


2. FROM buku1
3. WHERE id_penerbit = 4
4. ORDER BY tgl_terbit DESC, judul DESC

Hasil:
+---------+------------------------------------+------------+
| id_buku | judul | tgl_terbit |
+---------+------------------------------------+------------+
| 4 | Kumpulan Aplikasi PHP untuk Pemula | 2016-02-25 |
| 3 | MySQL Untuk Pemula | 2014-11-28 |
+---------+------------------------------------+------------+

Pada contoh diatas, karena tidak ada data tgl_terbit yang sama, maka tidak
dilakukan pengurutan pada kolom judul.

8.7. HAVING
Sebelumnya, kita telah membahas tentang klausa WHERE, nah, klausa
HAVING ini sama seperti klausa WHERE, bedanya:

1. Klausa WHERE hanya dapat digunakan pada kolom riil pada tabel,
sedangkan klausa HAVING dapat digunakan baik kolom riil tabel

Panduan Lengkap Query MySQL 117

Anda mungkin juga menyukai