在 MySQL 中, `__` 和 `!=` 是两个 __完全等价__ 的不等于运算符, 可以互换使用_.md
在 MySQL 中, <> 和 != 是两个 完全等价 的不等于运算符, 可以互换使用:
基本用法
-- 两种写法效果相同
SELECT * FROM users WHERE age <> 18;
SELECT * FROM users WHERE age != 18;
关键区别
-
语法标准:
<>是 SQL 标准语法!=是 MySQL 的扩展语法(非标准)
-
兼容性:
- 如果你编写跨数据库兼容的 SQL 代码, 建议使用
<> - 在 MySQL 中两者都可以正常使用
- 如果你编写跨数据库兼容的 SQL 代码, 建议使用
注意事项
-
与 NULL 比较:
SELECT NULL <> 5; -- 返回 NULL(不是 true) SELECT NULL != 'a'; -- 同样返回 NULL当涉及 NULL 值时, 应改用
IS NOT NULL:SELECT * FROM users WHERE name IS NOT NULL; -
字符串比较:
默认区分大小写 (如'Apple' <> 'apple'返回 true) -
性能:
完全一致, 因为底层执行逻辑相同
推荐实践
建议优先使用 <>, 因为它是 SQL 标准且更直观 (形似"不等于"符号), 而 != 在部分旧数据库中可能不受支持。

浙公网安备 33010602011771号