728x90
반응형
오라클의 NVL와 NVL2 함수는 둘 다 Null 값을 처리하는 데 사용됩니다.
하지만 그 기능과 사용법에는 차이가 있습니다.
NVL
NVL 함수는 첫 번째 인수가 Null인 경우 두 번째 인수로 대체합니다.
첫 번째 인수가 Null이 아니면 첫 번째 인수를 반환합니다.
NVL(expr1, expr2)
SELECT NVL(commission_pct, 0) AS commission FROM employees;
이 예제에서는 commission_pct가 Null이면 0을 반환하고, Null이 아니면 commission_pct 값을 반환합니다.
NVL2
NVL2 함수는 첫 번째 인수가 Null이 아닌 경우 두 번째 인수를 반환하고,
첫 번째 인수가 Null인 경우 세 번째 인수를 반환합니다.
NVL2(expr1, expr2, expr3)
SELECT NVL2(commission_pct, salary * commission_pct, salary) AS income FROM employees;
728x90
반응형
'DB' 카테고리의 다른 글
[DB][Oracle] TO_TIMESTAMP 함수 (0) | 2024.08.18 |
---|---|
[MySQL] Oracle의 NVL, NVL2를 MySQL에서 구현하기 (0) | 2024.08.10 |
[SQLD] Entity, Instance, Attribute (0) | 2024.08.08 |
[MySQL][Oracle] Boolean 데이터 타입의 차이점 (0) | 2024.08.07 |
[DB][Oracle] DECODE (0) | 2024.08.05 |