Veritabanında bir tabloyu el alırsak bu tabloda bulunan sütunlarda birden fazla kez tekrar eden veri bulunabilir. SELECT DISTINCT komutu
bu tekrarlanan değerleri sadeleştirerek farkı değerleri bulmamıza olanak sağlar.
SELECT DISTINCT sütun 1, sütun2, ...
FROM table_adı;
Örnek veritabanında gösterecek olursak.
Tablo adı: Musteriler
KullaniciID |
Ad |
soyad |
Adres |
Sehir |
Postakodu |
Ulke |
1 |
Safa |
Dedeoğlu |
Necmettin Erbakan Cad. no 8/1 |
İstanbul |
34000 |
Türkiye |
2 |
Fatih |
Turab |
İskele Cad. hastane sok. |
Artvin |
08300 |
Türkiye |
3 |
John |
Doupoint |
Claremont Rd no:8/3 |
Newcastle |
NE2448 |
İngiltere |
4 |
Gustavo |
Alfaro |
Cuero y Caicedo, Quito |
New York |
170129 |
Amerika |
5 |
Abel |
Gigli |
Dagmada Waaberi 324/5 |
Moskova |
Jh09010 |
Rusya |
6 |
Xiao |
Chu |
Unnamed Road |
Pekin |
Jk07320 |
Çin |
7 |
Osman |
Ebuselim |
Shara Zaviya Dahmani PO:928 |
Doha |
243512 |
Katar |
Örnek tablo üzerinde SELECT ve SELECT DISTINCT komutlarını kullanarak aradaki farkı görelim.
SELECT Ulke FROM Musteriler;
Sonuç çıktısı:
Türkiye |
Türkiye |
İngiltere |
Amerika |
Rusya |
Çin |
Katar |
SELECT DISTINCT Ulke FROM Musteriler;
Sonuç çıktısı:
Türkiye |
İngiltere |
Amerika |
Rusya |
Çin |
Katar |
Örnekte de Görüldüğü gibi SELECT komutunda var olan bütün verileri çekerken SELECT
DISTINCT da tekrarlanan değerler elenerek Birbirinden farklı değerler ortaya çıkarılır.
Aşağıdaki SQL komutunda ise SELECT DISTINCT da bulunan farklı verilerin sayısı gösterilir.
SELECT COUNT(DISTINCT Ulke) FROM Musteriler;