SQL Server中的NOT与<>操作符有何区别?

4
SELECT id
FROM table1 
WHERE NOT (id = 0)

SELECT id
FROM table1 
WHERE id <> 0

在上述两个查询中,哪一个需要考虑性能编码规范
3个回答

10

NOT是一个否定运算符,<>是一个比较运算符,它们都是ISO标准。对于你的示例,它们在性能上没有区别。

enter image description here


2
在大多数情况下,NOT 用于否定。 <> 表示 不等于

2
从性能方面来看,这两个查询几乎是相同的。如果您可以在SQL Server中检查实际执行计划,则两个查询没有区别。
“NOT”是否定词,“<>”是用于比较的运算符。
但是,如果您使用“NOT IN”,那么它将影响执行时间。
就编码标准而言,这两种都被不同的程序员用作标准,但根据我的经验,我总是遇到第二种情况。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接