In der Oracle-Datenbank die NVL()
Funktion ermöglicht es uns, Nullwerte durch einen anderen Wert zu ersetzen.
Syntax
Die Syntax lautet wie folgt:
NVL(expr1, expr2)
Wenn expr1
null ist, dann expr2
ist zurück gekommen. Sonst expr1
zurückgegeben wird.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung:
SELECT NVL(null, 'Fish')
FROM DUAL;
Ergebnis:
Fish
Und Folgendes passiert, wenn das erste Argument kein Nullwert ist:
SELECT NVL('Brocoli', 'Fish')
FROM DUAL;
Ergebnis:
Brocoli
Ungültige Argumentanzahl
Der Aufruf der Funktion ohne Übergabe von Argumenten führt zu einem Fehler:
SELECT NVL()
FROM DUAL;
Ergebnis:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
Und das Übergeben zu vieler Argumente verursacht auch einen Fehler:
SELECT NVL(1, 2, 3)
FROM DUAL;
Ergebnis:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
Der NVL2()
Funktion
Alternativ können Sie auch NVL2()
verwenden Funktion, mit der Sie einen anderen Wert angeben können, der zurückgegeben werden soll, falls das erste Argument nicht null ist.