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ý.