我觉得这很难测试/研究所以我问:在OR
类似于where (1 = 1) OR (column1 = @value)
条件下,第二部分,例如:column1 = @value
是否会被测试?如果可能请提供文件......
答案 0 :(得分:0)
根据MladenPrajdić的这篇文章,答案是否定的,SQL Server不会对OR条件进行短路:
另请参阅this post.
如果订单对您很重要,您可以使用CASE WHEN
声明。 SQL Server始终按顺序评估CASE WHEN
条件。