為什麼我們不能對錶中的 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 不是一個值。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
安卓
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP