我想在 SQL 中实现此功能(基本上 (3,4,5) 中的 b=2 和 c 是我想添加到顶层 select 语句中的两个条件)。
如果a=1,那么我希望检查第一个条件,否则应检查第二个条件。
CASE
WHEN a=1 THEN {AND b=2}
ELSE {AND c in (3,4,5)}
总查询太复杂,我无法将整个查询单独保留在 THEN 子句中。
最佳答案
SELECT Stuff
FROM Table
WHERE
SomeCondition
AND
(
(a=1 AND b=2)
OR
((NOT a=1) AND (c in (3,4,5)))
)
关于sql - 有条件 根据 CASE 语句的返回值执行条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38758524/