SQL - Menangani Duplikat
Mungkin ada situasi ketika Anda memiliki beberapa rekaman duplikat dalam sebuah tabel. Saat mengambil catatan seperti itu, lebih masuk akal untuk hanya mengambil catatan unik daripada mengambil catatan duplikat.
SQL DISTINCT Kata kunci, yang telah kita diskusikan digunakan dalam hubungannya dengan pernyataan SELECT untuk menghilangkan semua record duplikat dan dengan hanya mengambil record unik.
Sintaksis
Sintaks dasar kata kunci DISTINCT untuk menghilangkan rekaman duplikat adalah sebagai berikut.
SELECT DISTINCT column1, column2,.....columnN
FROM table_name
WHERE [condition]
Contoh
Pertimbangkan tabel PELANGGAN yang memiliki catatan berikut.
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Pertama, mari kita lihat bagaimana kueri SELECT berikut mengembalikan catatan gaji duplikat.
SQL> SELECT SALARY FROM CUSTOMERS
ORDER BY SALARY;
Ini akan menghasilkan hasil sebagai berikut di mana gaji tahun 2000 datang dua kali yang merupakan catatan duplikat dari tabel asli.
+----------+
| SALARY |
+----------+
| 1500.00 |
| 2000.00 |
| 2000.00 |
| 4500.00 |
| 6500.00 |
| 8500.00 |
| 10000.00 |
+----------+
Sekarang, mari kita gunakan kata kunci DISTINCT dengan query SELECT di atas dan lihat hasilnya.
SQL> SELECT DISTINCT SALARY FROM CUSTOMERS
ORDER BY SALARY;
Ini akan menghasilkan hasil sebagai berikut di mana kami tidak memiliki entri duplikat.
+----------+
| SALARY |
+----------+
| 1500.00 |
| 2000.00 |
| 4500.00 |
| 6500.00 |
| 8500.00 |
| 10000.00 |
+----------+