카테고리:

조건식 함수

NVL2

첫 번째 입력이 NULL인지 여부에 따라 값을 반환합니다.

  • expr1 이 NULL이 아닌 경우, NVL2는 expr2 를 반환합니다.

  • expr1 이 NULL인 경우, NVL2는 expr3 을 반환합니다.

구문

NVL2( <expr1> , <expr2> , <expr3> )
Copy

인자

expr1

NULL인지 여부를 확인하기 위해 검사할 식입니다.

expr2

expr1 이 NULL이 아닌 경우, 이 식이 평가되고 해당 값이 반환됩니다.

expr3

expr1 이 NULL인 경우, 이 식이 평가되고 해당 값이 반환됩니다.

사용법 노트

  • 세 식 모두 동일한(또는 호환 가능한) 데이터 타입을 가져야 합니다.

데이터 정렬 세부 정보

  • expr1 에 대한 데이터 정렬 사양은 이 식이 NULL인지 여부가 중요하기 때문에 무시됩니다.

  • expr2expr3 에 대한 데이터 정렬 사양은 호환되어야 합니다.

  • 함수에서 반환된 값은 expr2expr3 의 가장 높은 우선 순위 데이터 정렬입니다.

a 가 null이 아닌 경우 b 를 반환하고, 그렇지 않은 경우 c 를 반환합니다.

SELECT a, b, c, NVL2(a, b, c) FROM i2;

--------+--------+--------+---------------+
   A    |   B    |   C    | NVL2(A, B, C) |
--------+--------+--------+---------------+
 0      | 5      | 3      | 5             |
 0      | 5      | [NULL] | 5             |
 0      | [NULL] | 3      | [NULL]        |
 0      | [NULL] | [NULL] | [NULL]        |
 [NULL] | 5      | 3      | 3             |
 [NULL] | 5      | [NULL] | [NULL]        |
 [NULL] | [NULL] | 3      | 3             |
 [NULL] | [NULL] | [NULL] | [NULL]        |
--------+--------+--------+---------------+
Copy