MySQL NULL 值处理
mysql null 值处理
我们使用 where 子句来查询表中的数据时,如果查询条件或者查询字段中包含 null 值时,不能简单地使用通常使用的比较运算符,而是要使用 mysql 提供的专门的运算符。
1. mysql处理 null 值运算符
- is null: 当列的值是 null,此运算符返回 true。
- is not null: 当列的值不为 null, 运算符返回 true。
- <=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 null 时返回 true。
关于 null 的条件比较运算是比较特殊的。你不能使用 = null 或 != null 在列中查找 null 值 。
在 mysql 中,null 值与任何其它值的比较(即使是 null)永远返回 null,即 null = null 返回 null 。
mysql 中处理 null 使用 is null 和 is not null 运算符。
2. 通过命令窗口使用 null 值
以下范例中假设数据库 yapf 中的表 yapf_tbl 含有两列 yapf_author 和 yapf_count, yapf_count 中设置插入null值。
mysql 范例
root@host# mysql -u root -p password;
enter password:*******
mysql> use yapf;
database changed
mysql> create table yapf_tbl
-> (
-> yapf_author varchar(40) not null,
-> yapf_count int
-> );
query ok, 0 rows affected (0.05 sec)
mysql> insert into yapf_tbl (yapf_author, yapf_count) values ('yapf', 20);
mysql> insert into yapf_tbl (yapf_author, yapf_count) values ('硕编程', null);
mysql> insert into yapf_tbl (yapf_author, yapf_count) values ('google', null);
mysql> insert into yapf_tbl (yapf_author, yapf_count) values ('fk', 20);
mysql> select * from yapf_tbl;
+---------------+--------------+
| yapf_author | yapf_count |
+---------------+--------------+
| yapf | 20 |
| 硕编程 | null |
| google | null |
| fk | 20 |
+---------------+--------------+
4 rows in set (0.01 sec)