mysql提供了三大運算子:
is null: 當列的值是null,此運算子返回true。關於 null 的條件比較運算是比較特殊的。你不能使用 = null 或 != null 在列中查詢 null 值 。is not null: 當列的值不為null, 運算子返回true。
<=>: 比較操作符(不同於=運算子),當比較的的兩個值為null時返回true。
在mysql中,null值與任何其它值的比較(即使是null)永遠返回false,即 null = null 返回false 。
mysql中處理null使用is null和is not null運算子。
在命令提示符中使用 null 值
以下例項中假設資料庫 tutorials 中的表 tcount_tbl 含有兩列 tutorial_author 和 tutorial_count, tutorial_count 中設定插入null值。
例項嘗試以下例項:
root@host# mysql -u root -p password;mysql> select * from tcount_tbl;enter password:*
mysql> use tutorials;
database changed
mysql> create table tcount_tbl
-> (
-> tutorial_author varchar(40) not null,
-> tutorial_count int
-> );
query ok, 0 rows affected (0.05 sec)
mysql> insert into tcount_tbl
-> (tutorial_author, tutorial_count) values (『mahran』, 20);
mysql> insert into tcount_tbl
-> (tutorial_author, tutorial_count) values (『mahnaz』, null);
mysql> insert into tcount_tbl
-> (tutorial_author, tutorial_count) values (『jen』, null);
mysql> insert into tcount_tbl
-> (tutorial_author, tutorial_count) values (『gill』, 20);
+—————–+—————-+
| tutorial_author | tutorial_count |
+—————–+—————-+
| mahran | 20 |
| mahnaz | null |
| jen | null |
| gill | 20 |
+—————–+—————-+
4 rows in set (0.00 sec)
mysql>
以下例項中你可以看到 = 和 != 運算子是不起作用的:
mysql> select * from tcount_tbl where tutorial_count = null;查詢資料表中 tutorial_count 列是否為 null,必須使用is null和is not null,如下例項:empty set (0.00 sec)
mysql> select * from tcount_tbl where tutorial_count != null;
empty set (0.01 sec)
mysql> select * from tcount_tbl-> where tutorial_count is null;
+—————–+—————-+
| tutorial_author | tutorial_count |
+—————–+—————-+
| mahnaz | null |
| jen | null |
+—————–+—————-+
2 rows in set (0.00 sec)
mysql> select * from tcount_tbl
-> where tutorial_count is not null;
+—————–+—————-+
| tutorial_author | tutorial_count |
+—————–+—————-+
| mahran | 20 |
| gill | 20 |
+—————–+—————-+
2 rows in set (0.00 sec)
mysql 判斷字段是否為null
sql中有isnull方法,介紹如下 isnull 使用指定的替換值替換 null。語法isnull check expression replacement value 引數check expression 將被檢查是否為 null的表示式。check expression 可以是任何型別的。re...
mysql關於null值的使用
null值的處理是mysql經常被混淆的概念之一,也是查詢中經常會犯迷糊的地方,做下簡單整理以便日後查詢 自己理解的 1 null值只能用is null is not null和ifnull 判斷,不能進行任何比較運算,其他 in,not in.與null的比較都無任何資料返回 2 查詢結果集中只有...
mysql 判斷null 和 空字串
1.在mysql中null 不能使用任何運算子與其他字段或者變數 函式 儲存過程 進行運算。若使用運算資料就可能會有問題。2.對null 的判斷 建立乙個user表 id 主健 name 可以為空 select from user insert into user values 33 null 建立...