V databázi Oracle je to NVL()
Funkce nám umožňuje nahradit hodnoty null jinou hodnotou.
Syntaxe
Syntaxe vypadá takto:
NVL(expr1, expr2)
Pokud expr1
je null, pak expr2
je vrácen. Jinak expr1
je vráceno.
Příklad
Zde je příklad k demonstraci:
SELECT NVL(null, 'Fish')
FROM DUAL;
Výsledek:
Fish
A zde je to, co se stane, když je prvním argumentem nenulová hodnota:
SELECT NVL('Brocoli', 'Fish')
FROM DUAL;
Výsledek:
Brocoli
Neplatný počet argumentů
Volání funkce bez předání jakýchkoli argumentů má za následek chybu:
SELECT NVL()
FROM DUAL;
Výsledek:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
A předání příliš mnoha argumentů také způsobí chybu:
SELECT NVL(1, 2, 3)
FROM DUAL;
Výsledek:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
NVL2()
Funkce
Alternativně můžete použít NVL2()
funkce, která umožňuje zadat jinou hodnotu, která se má vrátit v případě, že první argument není nulový.