这个问题的评论:
不要依赖短路......可以按照 SQL Server 认为合适的任何顺序评估这些子句。
因为它与这个答案有关:
SELECT * FROM TABLE WHERE (@vari is null or col = @vari)
- 它是否正确?
- 是否有一个很好的测试设置,也许在 SQL fiddle 中,可以重现这种现象?(使用这个词很松散)
- 这只发生在 WHERE 子句中吗?或者也许只有 AND/OR 运算符?
我问这个是因为我没有在网上找到任何明确说明这一点的东西。