AS ile takma ad
Hesaplanmış sütunların adı genelde çirkin olur (price - cost gibi). AS ile sütuna anlamlı bir ad verirsin:
SELECT name AS urun,
price - cost AS birim_kar
FROM products;
ASkelimesi çoğu veritabanında isteğe bağlıdır:price - cost birim_karda çalışır, ama AS yazmak niyeti netleştirir.- Boşluk veya özel karakter içeren adlar için çift tırnak kullan:
AS "Birim Kâr". - Tablolara da takma ad verilebilir:
FROM products AS p. Bu JOIN derslerinde çok işine yarayacak.
DISTINCT ile tekrarsız değerler
Hangi kategorilerde ürün sattığımızı merak ediyoruz. SELECT category FROM products her ürün için bir satır döndürür. Tekrarları atmak için:
SELECT DISTINCT category FROM products;
DISTINCT birden fazla sütunla kullanılırsa kombinasyonların tekrarsızını verir:
SELECT DISTINCT status, channel FROM orders;
Derinleş: DISTINCT nasıl düşünülmeli?
DISTINCT, seçtiğin tüm sütunların birlikte tekrarsız kombinasyonlarını verir; tek bir sütuna uygulanmaz. Aşağıdaki sorgu “her şehir” değil, “her şehir–mutfak çifti” için bir satır döndürür:
SELECT DISTINCT city, cuisine FROM lk_restaurants ORDER BY city, cuisine;
COUNT(DISTINCT city) ise farklı şehir sayısını verir. DISTINCT çoğu zaman bir JOIN'in satırları beklenmedik biçimde çoğalttığını gizler: sonuçta tekrar görüyorsan önce nedenini anla, DISTINCT'i yara bandı olarak kullanma.