★★★★★SQL中的NULL★★★★★
工作中,常用到NULL,Empty,Space等值,对它们了解的不熟的话,会有一些小的问题。
1.什么是NULL
我们看一下Mysql文档中的定义:
NULL
means “a missing unknown value” and it is treated somewhat differently from other values.
那么,如何验证某个值是否是NULL,使用 IS NULL 或是 IS NOT NULL:
mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
+-----------+---------------+
| 1 IS NULL | 1 IS NOT NULL |
+-----------+---------------+
| 0 | 1 |
+-----------+---------------+
注意:我们不能使用数学中的比较符号来判断,值是否为NULL:
mysql> SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
+----------+-----------+----------+----------+
| 1 = NULL | 1 <> NULL | 1 < NULL | 1 > NULL |
+----------+-----------+----------+----------+
| NULL | NULL | NULL | NULL |
+----------