In Oracle Database, de NVL()
functie stelt ons in staat om null-waarden te vervangen door een andere waarde.
Syntaxis
De syntaxis gaat als volgt:
NVL(expr1, expr2)
Als expr1
is null, dan expr2
wordt teruggestuurd. Anders expr1
wordt geretourneerd.
Voorbeeld
Hier is een voorbeeld om te demonstreren:
SELECT NVL(null, 'Fish')
FROM DUAL;
Resultaat:
Fish
En dit is wat er gebeurt als het eerste argument een niet-null-waarde is:
SELECT NVL('Brocoli', 'Fish')
FROM DUAL;
Resultaat:
Brocoli
Ongeldig aantal argumenten
Het aanroepen van de functie zonder het doorgeven van argumenten resulteert in een fout:
SELECT NVL()
FROM DUAL;
Resultaat:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
En het doorgeven van te veel argumenten veroorzaakt ook een fout:
SELECT NVL(1, 2, 3)
FROM DUAL;
Resultaat:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
De NVL2()
Functie
U kunt ook de NVL2()
. gebruiken functie, waarmee u een andere waarde kunt opgeven die moet worden geretourneerd in het geval dat het eerste argument niet null is.