Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Cara Menghilangkan Baris Duplikat di SQL

Masalah:

Anda ingin menghilangkan baris duplikat dari kumpulan hasil kueri sehingga setiap baris hanya muncul sekali.

Contoh:

Basis data kami memiliki tabel bernama clothes dengan data pada kolom berikut:id , name , color , dan year_produced .

id nama warna tahun_diproduksi
1 Kaos kuning 2015
2 jaket biru 2016
3 jeans hitam 2015
4 jaket biru 2015
5 jaket hijau 2016
6 jaket kuning 2017
7 topi kuning 2017

Mari kita dapatkan nama dan warna pakaian yang tidak berulang yang diproduksi sebelum 2017.

Solusi:

SELECT DISTINCT name,
  color
FROM clothes
WHERE year_produced < 2017;

Ini hasilnya:

nama warna
Kaos kuning
jaket biru
jeans hitam
jaket hijau

Perhatikan bahwa biru hanya muncul sekali di kumpulan hasil ini, meskipun muncul dua kali di tabel asli. Ini karena kami menetapkan bahwa kami hanya ingin memilih baris yang kombinasi nama-warnanya unik.

Diskusi:

Cukup gunakan DISTINCT kata kunci setelah SELECT jika Anda ingin memilih hanya baris yang tidak berulang. Kata kunci ini memaksa kueri untuk membuang baris duplikat, hanya berdasarkan kolom yang Anda daftarkan.

Berikut ini contoh memilih hanya baris yang nama itemnya unik:

SELECT DISTINCT name
FROM clothes
WHERE year_produced < 2017;

Tidak seperti kueri sebelumnya, kueri ini hanya mengembalikan tiga catatan:

nama
Kaos
jeans

Meskipun ada empat jeans di tabel asli (dua biru, satu hijau, dan satu kuning), item tersebut hanya muncul sekali dalam kumpulan hasil ini berkat DISTINCT kata kunci.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Melihat Kinerja Cuplikan Basis Data

  2. Cara Menyalin Data Dari Satu Tabel ke Tabel Lainnya di SQL

  3. Kunci SQL, Unik dan Utama

  4. Pentingnya Garis Dasar

  5. Mencocokkan Pasokan Dengan Permintaan Tantangan