我想在SQL中实现这个功能(基本上b = 2和c in(3,4,5)是我想要添加到顶级选择语句的两个条件)。
如果a = 1,那么我想要检查第一个条件,否则应该检查第二个条件。
CASE
WHEN a=1 THEN {AND b=2}
ELSE {AND c in (3,4,5)}
对于我来说,总查询过于复杂,无法将整个查询分别保留在THEN子句中。
答案 0 :(得分:3)
SELECT Stuff
FROM Table
WHERE
SomeCondition
AND
(
(a=1 AND b=2)
OR
((NOT a=1) AND (c in (3,4,5)))
)