首先,isnull,ifnull,nullif都是函数;
1. is null 和 isnull()
var is null的作用和isnull(var)的作用一样,都是判断变量值是否为null
SELECT first_name,job_id
FROM employees
WHERE ISNULL(manager_id);
SELECT first_name,job_id
FROM employees
WHERE manager_id IS NULL;
上述两句SQL执行结果是一样的:
2.ifnull
ifnull(expression1,expression2)
如果expression1的值是null,就返回expression2;如果expression1的值不为null,就返回expression1
SELECT commission_pct,IFNULL(commission_pct,0.2) AS adjusted_com
FROM employees;
3.nullif
nullif(expre1,expre2)
如果expre1=expre2,那么就返回null;如果不相同,就返回expre1;