在概念上,NULL是一个丢失的未知的值,它与其他值被不同的对待。使用 IS NULL
,IS NOT NULL
操作符,如下所示:
mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
+-----------+---------------+
| 1 IS NULL | 1 IS NOT NULL |
+-----------+---------------+
| 0 | 1 |
+-----------+---------------+
因为1是一个数字,或者说是一个整型值,所以,对于一个具体的整型值来说,它不是NULL
,所以,1 IS NULL为假,所以显示0,而1IS NOT NULL,则表示真,返回1。
对于NULL,你不能使用算术运算符,例如=
, <>
, `` 等,如下:
mysql> SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
+----------+-----------+----------+----------+
| 1 = NULL | 1 <> NULL | 1 < NULL | 1 > NULL |
+----------+-----------+----------+----------+
| NULL | NULL | NULL | NULL |
+----------+-----------+----------+----------+
在MySQL中,0或NULL表示假,其他任何值表示真,默认的真值为1。