Menghapus duplikat

Selesai

Meskipun baris dalam tabel harus selalu unik, saat Anda hanya memilih sub rangkaian kolom, baris hasil mungkin tidak unik meskipun baris aslinya unik. Misalnya, Anda mungkin mengubah tabel pemasok dengan persyaratan kota dan negara bagian (atau provinsi) menjadi unik sehingga tidak akan pernah ada lebih dari satu pemasok di semua kota. Namun, jika Anda hanya ingin melihat kota dan negara/wilayah pemasok, hasil yang dibuat mungkin tidak unik. Misalkan Anda menulis kueri berikut:

SELECT City, CountryRegion
FROM Production.Supplier
ORDER BY CountryRegion, City;

Kueri ini mungkin membuat hasil yang mirip dengan yang berikut ini:

Kota

NegaraWilayah

Aurora

Kanada

Barrie

Kanada

Brampton

Kanada

Brossard

Kanada

Brossard

Kanada

Burnaby

Kanada

Burnaby

Kanada

Burnaby

Kanada

Calgary

Kanada

Calgary

Kanada

...

...

Secara default, klausul SELECT menyertakan kata kunci ALL implisit yang menghasilkan perilaku berikut:

SELECT ALL City, CountryRegion
FROM Production.Supplier
ORDER BY CountryRegion, City;

T-SQL juga mendukung kata kunci DISTINCT alternatif, yang menghapus baris hasil duplikat:

SELECT DISTINCT City, CountryRegion
FROM Production.Supplier
ORDER BY CountryRegion, City;

Ketika menggunakan DISTINCT, contoh hanya menghasilkan satu nilai dari setiap kombinasi nilai unik dalam daftar SELECT:

Kota

NegaraWilayah

Aurora

Kanada

Barrie

Kanada

Brampton

Kanada

Brossard

Kanada

Burnaby

Kanada

Calgary

Kanada

...

...