NULLIF ve IIF
Coddy'nin SQL Journey'sinin Temellerin Ötesi bölümünün bir parçası. Ders 4 / 27.
İki koşullu yardımcı daha; ikisi de küçük ve kullanışlı.
NULLIF(a, b), a = b olduğunda NULL döndürür; aksi takdirde a değerini döndürür. Klasik kullanım alanı, sıfıra bölmeye karşı koruma sağlamaktır:
SELECT total / NULLIF(count, 0) AS average
FROM statscount sıfırsa hata yerine NULL elde ederiz.
IIF(cond, a, b), CASE WHEN cond THEN a ELSE b END için iki dallı bir kısayoldur. Seçim ikili olduğunda bunu kullanın; daha fazla dal olduğunda CASE kullanın.
Görev
KolayKullanılabilir tablolar ve sütunlar:
matches:id,shots,goals
Her maç için şunları döndürün:
idconversion:goals * 1.0 / shots; ancakshotsdeğeri0olduğundaNULL(NULLIFkullanın)verdict:goals > 0olduğunda'win', aksi takdirde'no goals'(IIFkullanın)
id değerine göre sıralayın.
Kendin dene
SELECT id,
-- NULLIF kullanarak dönüşüm
-- IIF kullanarak karar
FROM matches
ORDER BY id
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temellerin Ötesi bölümündeki tüm dersler
2String Fonksiyonları
LENGTH, UPPER, LOWERSUBSTRINSTRREPLACE ve TRIM|| ile BirleştirmeÖzet - FaturalarKendi başına pratik yap: SQL playground