Menggunakan DISTINCT untuk Mengeliminasi Duplikat - MySQL Dasar #54
Dalam kesemptan kali ini Anda akan belajar menggunakan fungsi DISTINCT untuk memilih nilai - nilai tertentu atau menggunakan COUNT(DISTINCT) untuk menghitung sebuah ekspresi dengan cara menghapus nilai duplikat pada kolom yang dihitungnya. Contoh
Lihat daftar isi : Menghasilkan Kesimpulan - MySQL Dasar #50
MariaDB [root93]> SELECT DISTINCT nama from daftar_supir
-> ORDER by nama;
+-------+
| nama |
+-------+
| Ben |
| Henri |
| Henry |
| Susi |
+-------+
4 rows in set (0.020 sec)
MariaDB [root93]> SELECT COUNT(DISTINCT nama)
-> FROM daftar_supir;
+----------------------+
| COUNT(DISTINCT nama) |
+----------------------+
| 4 |
+----------------------+
1 row in set (0.001 sec)
Jika digunakan pada beberapa kolom, fungsi DISTINCT menunjukan kombinasi - kombinasi yang berbeda dan Fungsi COUNT(DISTINCT) dapat menghitung kombinasi tersebut dengan menghapus data duplikatnya terlebih dahulu.
Query berikut menunjukan berbagai pasangan pengirim/penerima pada tabel mail, kemudian menunjukan berapa banyak pasangan semacam itu, dan tentunya dengan fungsi DISTINCT akan menunjukan nilai pengirim/penerima dengan menghapus duplikasi/mengeliminasi jika terdapat lebih dari satu pengirim dan penerima.
MariaDB [root93]> SELECT DISTINCT srcuser, dstuser
-> FROM mail
-> ORDER by srcuser, dstuser;
+---------+---------+
| srcuser | dstuser |
+---------+---------+
| barb | barb |
| barb | tricia |
| gene | barb |
| gene | gene |
| phil | barb |
| phil | phil |
| phil | tricia |
| tricia | gene |
| tricia | phil |
+---------+---------+
9 rows in set (0.001 sec)
Selanjutnya kita hitung berapa jumlah baris dari pasangan diatas dengan COUNT(DISTINCT)
MariaDB [root93]> SELECT COUNT(DISTINCT srcuser, dstuser)
-> FROM mail;
+----------------------------------+
| COUNT(DISTINCT srcuser, dstuser) |
+----------------------------------+
| 9 |
+----------------------------------+
1 row in set (0.001 sec)
DISTINCT juga bisa Anda terapkan pada ekspresi maksudnya Anda tidak hanya menerapkannya pada nilai - nilai kolom tetapi misalnya disini dapat Anda gunakan untuk menentukan banyaknya jam dimana pesan dikirimkan, Anda bisa menghitung nilai - nilai unik dari fungsi HOUR didalam DISTINCT
MariaDB [root93]> SELECT COUNT(DISTINCT HOUR(t))
-> FROM mail;
+-------------------------+
| COUNT(DISTINCT HOUR(t)) |
+-------------------------+
| 2 |
+-------------------------+
1 row in set (0.001 sec)
Baca Selanjutnya : Mencari Nilai Terkait dari MIN dan MAX - MySQL Dasar #55
0 Response to "Menggunakan DISTINCT untuk Mengeliminasi Duplikat - MySQL Dasar #54"
Post a Comment
Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin