Menu
Coddy logo textTech

NULLIF i IIF

Część sekcji Poza podstawami ścieżki SQL w Coddy. Lekcja 4 z 27.

Dwie kolejne funkcje warunkowe — obie niewielkie i przydatne.

NULLIF(a, b) zwraca NULL, gdy a = b, a w przeciwnym razie a. Klasycznym zastosowaniem jest zabezpieczenie przed dzieleniem przez zero:

SELECT total / NULLIF(count, 0) AS average
FROM stats

Jeśli count wynosi zero, otrzymujemy NULL zamiast błędu.

IIF(cond, a, b) to skrót z dwiema gałęziami dla CASE WHEN cond THEN a ELSE b END. Używaj go, gdy wybór jest binarny; sięgnij po CASE, gdy jest więcej gałęzi.

challenge icon

Wyzwanie

Łatwy

Dostępne tabele i kolumny:

  • matches: id, shots, goals

Dla każdego meczu zwróć:

  • id
  • conversion: goals * 1.0 / shots, ale NULL, gdy shots wynosi 0 (użyj NULLIF)
  • verdict: 'win', gdy goals > 0, w przeciwnym razie 'no goals' (użyj IIF)

Sortuj według id.

Spróbuj swoich sił

SELECT id,
       -- konwersja za pomocą NULLIF
       -- werdykt za pomocą IIF
FROM matches
ORDER BY id
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Poza podstawami

Poćwicz samodzielnie: Edytor online SQL