602SQL-Úplná dokumentace Index  

Funkce NULLIF (SQL)

NULLIF ( výraz1, výraz2 )

Funkce NULLIF vrací hodnotu NULL pokud se hodnoty obou výrazů rovnají, jinak vrací hodnotu prvního výrazu. Výraz1 a výraz2 musí být takových typů, aby je bylo možno porovnat.

Jedná se v podstatě o zjednodušení zápisu využívajícího podmíněný výraz CASE:

CASE 
  WHEN výraz1=výraz2 THEN NULL
  ELSE výraz1
END

Poznámka: Jeden z důvodů zavedení je historický - pokud starší databáze neměly zavedenu hodnotu NULL, musely tuto hodnotu reprezentovat jiným způsobem (např. -1 pro plat apod.). Při přechodu na SQL, které vyžaduje hodnotu NULL, se tyto hodnoty musí transformovat, např. pomocí funkce NULLIF:

... NULLIF(plat, -1) ...