为什么 SQL 语言中有两个否定运算符?!=
和<>
。
它们是多余的还是根据操作数而有所不同?
我应该使用哪一个来否定字符串MySQL
?
<>
是 ISO Sql 标准!=
是特定于供应商的他们俩之间没有区别。使用哪一个只是个人喜好。我总是喜欢<>
它,因为它是ISO SQL标准
SQL 标准仅指定<>
不等于。SQL:2011 Foundation,第 5.2 节<token>
并<separator>
指定:
<not equals operator> ::= <>
然而,一些 SQL 实现(如 MySQL)也支持!=
许多程序员更熟悉!=
的不等于。它们是完全等效的,因此您可以使用其中任何一个,但从标准的角度来看,您应该使用<>
.
另请参阅 MySQL 文档中的not equals。