null 처리 함수
null을 허용하는 field에 대해서 연산이 이루어질 경우 매우 주의해야 한다!
null은 연산에서 빠지기 때문이다 (단일행 함수 및 일반 연산)
nvl 함수
문법 : nvl('컬럼', 치환할 값);
column의 값이 null인지 체크하여 null이면 치환
nvl2 함수
문법 : nvl('컬럼', 값1, 값2);
column 값이 null이 아니면 값1, null이면 값2로 치환
* null과 값을 합치면 null이 나온다
SELECT name, pay, bonus, pay + bonus
FROM t_professor;
nvl() 함수
bonus가 null이면 0으로 치환되어 나온다
SELECT name, pay, bonus, pay + nvl(bonus, 0)
FROM t_professor;
[실습] #4201
SELECT name, pay, nvl(bonus, 0) AS BONUS, nvl2(bonus, pay * 12 + bonus, pay * 12) AS 연봉
FROM t_professor
WHERE deptno = 101;
'database > Oracle' 카테고리의 다른 글
[Oracle] Singlerow_Number (0) | 2022.08.31 |
---|---|
[Oracle] Singlerow_conversion (0) | 2022.08.31 |
[Oracle] SingleRow_String (0) | 2022.08.31 |
[Oracle] Oracle (0) | 2022.08.30 |
[Oracle] SQL 기초 - SELECT (0) | 2022.08.30 |