
Testing for inequality in T-SQL我刚刚在WHERE子句中遇到了这个问题:
与以下内容相比如何:
或与:
我总是会自己写后者,但显然其他人的看法有所不同。一个人的表现会比另一个人好吗?我知道使用 这3个将获得相同的确切执行计划
当然,这也将取决于索引本身的选择性。我总是自己使用au_id <> @id id 请注意!=运算符不是标准SQL。如果您希望代码具有可移植性(也就是说,如果您愿意的话),请改用<>。 以后再来的人只需稍作调整: 当存在空值时,等于运算符将生成未知值 在下面的示例中,我将询问一对
请注意,在这里,我们期望的结果是:
但是,相反,我们得到了另一个结果
不会影响性能,两个语句完全相等。 HTH |