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 |
+----------+