為什麼我們不能使用比較運算子(=)來獲取表中帶 NULL 的行?
我們無法使用 =(比較運算子),因為我們知道 NULL 不是一個值。如果我們要獲取表中帶 NULL 的行,那麼需要在 MySQL 查詢中使用 IS NULL 運算子。以下使用“employee”表資料的示例會展示它 −
示例
mysql> Select * from Employee WHERE Salary IS NULL; +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+-------+--------+ 2 rows in set (0.00 sec)
上面的查詢使用 IS NULL 運算子,會生成輸出,其中 salary 列帶有 NULL。
mysql> Select * from employee where salary = NULL; Empty set (0.00 sec)
上面的查詢使用 =(比較運算子),因此會生成空集,因為 NULL 不是一個值。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP