NVL(column_name, m) - Returns m if column_name value is NULL
Expand|Select|Wrap|Line Numbers
- SELECT NVL(empno,0) FROM emp -- returns 0 if empno is NULL
Expand|Select|Wrap|Line Numbers
- SELECT NVL2(empno,empno,'NO EID') from dual -- returns empno if empno IS NOT NULL else returns 'NO EID'
Expand|Select|Wrap|Line Numbers
- SELECT NULLIF(empno,1) FROM emp -- returns NULL IF empno = 1
Expand|Select|Wrap|Line Numbers
- SELECT COALESCE(ename,first_name,last_name,'NO NAME') from emp -- returns first_name IF ename IS NULL, IF first_name IS also NULL, then returns last_name, IF last_name IS also NULL, then returns 'NO NAME'
Expand|Select|Wrap|Line Numbers
- SELECT DECODE(empno,1,'PM',2,'BM','EMP') FROM emp -- returns 'PM' if empno = 1 ELSE IF empno = 2 then returns 'BM' ELSE returns 'EMP'
Expand|Select|Wrap|Line Numbers
- SELECT empno,ename,
- (CASE WHEN (empno = 1) THEN 'PM'
- WHEN (empno = 2) THEN 'BM'
- ELSE 'EMP' END) Position
- FROM emp