什麼是 MySQL NULL 安全相等運算子,它與比較運算子有何不同?


MySQL NULL 安全相等運算子,等同於標準 SQL IS NOT DISTINCT FROM 運算子,執行與 = 運算子一樣的相等比較。其符號是<=>。它在兩個運算元都為 NULL 的情況下與比較運算子執行不同。考慮以下示例來理解 NULL 安全運算子以及它與比較運算子之間的差異 -

mysql> Select 50 <=> 50, NULL <=> NULL, 100 <=> NULL;
+-----------+---------------+--------------+
| 50 <=> 50 | NULL <=> NULL | 100 <=> NULL |
+-----------+---------------+--------------+
|         1 |             1 |            0 |
+-----------+---------------+--------------+
1 row in set (0.00 sec)

mysql> Select 50 = 50, NULL = NULL, 100 = NULL;
+---------+-------------+------------+
| 50 = 50 | NULL = NULL | 100 = NULL |
+---------+-------------+------------+
|       1 |        NULL |       NULL |
+---------+-------------+------------+
1 row in set (0.00 sec)

更新於: 2020 年 6 月 22 日

303 次瀏覽

啟動您的 職業

透過完成課程獲得認證

開始學習
廣告