在SQL中,NULL值在于任何其他值甚至NULL值比较时总是假的(FALSE)。包含NULL的一个表达式总是产生一个NULL值,除非在包含在表达式中的运算符和函数的文档中指出。
如果你想要寻找值是NULL的列,你不能使用=NULL测试。比如:
mysql> SELECT * FROM student WHERE phone = NULL;
这里语句不返回任何行,也就是查询不到想要的数据。
要想寻找NULL值,你必须使用IS NULL方法。下例显示如何写才能正确的查询出来:
mysql> SELECT * FROM student WHERE phone IS NULL;