SQL (SQL Server 2005) 中是否有等效于 VB 的AndAlso
/OrElse
和 C# 的&&
/ ||
。我正在运行类似于以下内容的选择查询:
SELECT a,b,c,d
FROM table1
WHERE
(@a IS NULL OR a = @a)
AND (@b IS NULL OR b = @b)
AND (@c IS NULL OR c = @c)
AND (@d IS NULL OR d = @d)
例如,如果“@a”参数作为 NULL 传入,则评估 WHERE 子句的第二部分 (a = @a) 没有意义。有没有办法通过使用特殊语法或重写查询来避免这种情况?
谢谢,詹姆斯。