NULL
是一种比较特殊的情况,如果直接通过sql语句查询
NULL是查询不到的结果都是0条
用NULL=NULL
和NULL!=NULL
判断结果都为NULL
.
因为NULL没有值是没有办法比较的
接下来我们通过示例说明
user
表内容如下:
| uid | username| age |
|---------|-------- |-------- |
| 1 | 张三 | 62 |
|---------|-------- |-------- |
| 2 | NULL | 34 |
|---------|-------- |-------- |
| 3 | 王五 | 23 |
---------------------
综上所述 NULL 作为特殊字符是无法用普通的方式查询的
-
所以mysql提供了一个专门针对 NULL 查询的关键字 就是:
is NULL 和is not NULL
比如查找 username 为NULL的数据执行sql如下:
SELECT uid,username,age FROM username is NULL
比如查找 username 不为NULL的数据执行sql如下:
SELECT uid,username,age FROM username is not NULL
所以我们为了避免遇到这种问题,尽量不要使用NULL,作为类型处理数据。 而且使用NULL这种方式不利于我们对mysql的优化。