Oracle9i SQL Reference Release 2 (9.2) Part Number A96540-02 |
|
|
View PDF |
nullif::=
NULLIF
compares expr1
and expr2
. If they are equal, then the function returns null. If they are not equal, then the function returns expr1
. You cannot specify the literal NULL
for expr1
.
The NULLIF
function is logically equivalent to the following CASE
expression:
CASE WHEN expr1 = expr 2 THEN NULL ELSE expr1 END
The following example selects those employees from the sample schema hr
who have changed jobs since they were hired, as indicated by a job_id
in the job_history
table different from the current job_id
in the employees
table:
SELECT e.last_name, NULLIF(e.job_id, j.job_id) "Old Job ID" FROM employees e, job_history j WHERE e.employee_id = j.employee_id ORDER BY last_name; LAST_NAME Old Job ID ------------------------- ---------- De Haan AD_VP Hartstein MK_MAN Kaufling ST_MAN Kochhar AD_VP Kochhar AD_VP Raphaely PU_MAN Taylor SA_REP Taylor Whalen AD_ASST Whalen