nvl()
The nvl() function evaluates the first argument and returns it if the result is not null. If the result is null, it returns the value of the second argument.
Syntax
nvl(VAL_EXPR, DEFAULT_EXPR)
Parameters
VAL_EXPR- The expression to evaluate. If the result is not null, that value is returned.
DEFAULT_EXPR- The default value expression to return when
VAL_EXPRevaluates to null.
Description
The nvl() function evaluates VAL_EXPR. If the result is not null, it immediately returns that value. If the result is null, it evaluates DEFAULT_EXPR and returns its value.
The return type is determined by the type of the value that is actually returned.
Error codes
N/A
Usage examples
To prepare the WEB_APACHE_SAMPLE table used in these examples, refer to Preparing sample data.
-
Return the
refererfield value if present, or a default value if absenttable limit=5 WEB_APACHE_SAMPLE | eval result = nvl(referer, "(none)") | fields referer, result -
Value is null — default value is returned
json "{'referer': null}" | eval result = nvl(referer, "(none)") | # result: (none) -
Field does not exist — default value is returned
json "{}" | eval result = nvl(referer, "(none)") | # result: (none) -
Numeric default value
json "{'bytes': null}" | eval result = nvl(bytes, 0) | # result: 0
Compatibility
The nvl() function is available since before Sonar 4.0.