mysql命令行 - NULL 和 NOT NULL
NULL代表空值, 它是mysql里一个比较特殊的数据类型。在这一节里我们要学习:
如何处理NULL值?
如果一个列的值被设为NULL,那么我们不可以使用比较操作数作为条件来查询。例如:
SELECT * FROM sometable WHERE somefeild = NULL
上述查询语句是不正确的。mysql提供三种特殊的操作数来处理NULL值。
- IS NULL:如果列值为NULL,那么操作数返回真值
- IS NOT NULL: 如果列值为不为NULL,那么操作数返回真值
- <=>: 全等比较操作数,如何想比较的两个变量全等,那么换回真值,例如:
mysql> select null<=>null;+-------------+| null<=>null |+-------------+| 1 |+-------------+1 row in set (0.00 sec)
因此,本文开头例子里的查询语句的正确写法应该是:
SELECT * FROM sometable WHERE somefield IS NULL//或者SELECT * FROM sometable WHERE somefield <=> NULL



0 条评论:
发表评论
指向此帖子的链接:
创建链接