Nejsem si jistý, proč si myslíte, že dokumentace je vágní.
Jednoduše projde všechny parametry jeden po druhém a vrátí první, který je NOT NULL
.
COALESCE(NULL, NULL, NULL, 1, 2, 3)
=> 1
COALESCE(1, 2, 3, 4, 5, NULL)
=> 1
COALESCE(NULL, NULL, NULL, 3, 2, NULL)
=> 3
COALESCE(6, 5, 4, 3, 2, NULL)
=> 6
COALESCE(NULL, NULL, NULL, NULL, NULL, NULL)
=> NULL
Přijímá téměř libovolný počet parametrů, ale měly by být stejného datového typu. (Pokud se nejedná o stejný datový typ, budou implicitně přetypovány na vhodný datový typ pomocí pořadí priorit datových typů.)
Je to jako ISNULL()
ale pro více parametrů, spíše než jen dva.
Je to také ANSI-SQL
, kde-as ISNULL()
není.