在 MySQL 中,<=> 被称为 安全等于操作符 ,它的核心作用是 在判断两个值是否相等时,能够安全处理 NULL 值 ,这是它和普通等于操作符 = 的关键区别。
核心特性
- 支持
NULL值的相等判断
普通的=操作符在遇到NULL时,结果会直接返回NULL(既不是TRUE也不是FALSE);而<=>会明确返回TRUE或FALSE。 - 非
NULL值判断和=效果一致
当两个操作数都不为NULL时,<=>和=的判断结果完全相同。
对比表:= vs <=>
| 表达式 | = 的结果 |
<=> 的结果 |
|---|---|---|
1 = 1 |
TRUE |
TRUE |
1 = 2 |
FALSE |
FALSE |
1 = NULL |
NULL |
FALSE |
NULL = NULL |
NULL |
TRUE |