NULL值的判断一般使用IS NULL或IS NOT NULL,不能使用以上的比较操作符=、<、>,因为NULL是一个特殊的值,表
示这个值是未知的或没有定义的。
以下命令将查询employees表中first_name列以字母D开头的员工且last_name值不是NULL的记录。
SELECT * FROM employees WHERE first_name LIKE 'D%' AND last_name IS NOT NULL;
上述命令添加的条件“AND last_name IS NOT NULL”仅是为了演示,实际上,由于last_name列上有约束——必须是NOT
NULL,所以“AND last_name IS NOT NULL”这个条件总是满足的。
对于GROUP BY子句,两个NULL值可以认为是相等的。
对于“ORDER BY…ASC”,NULL显示在前。对于“ORDER BY…DESC”,NULL值显示在后。
0或空字符串实际上都是有值的,所以在一个NOT NULL的列上插入0或空字符串是允许的。