提前道歉,因为我觉得我可能忘记/错过了一些明显的东西。开始; 我在 WHERE 子句中使用了 case 语句,以下工作正常:
WHERE r.[SomeCol] = @SomeColVal
AND SomeOtherCol =
(
CASE WHEN (@Year = 0 AND @Period = 0) THEN
@SomeVal
WHEN...
...
ELSE
@SomeVal
END
我的“问题”是我想在我的 ELSE 块中添加一个额外的 OR 子句。就像这样:
WHERE r.[SomeCol] = @SomeColVal
AND SomeOtherCol =
(
CASE WHEN (@Year = 0 AND @Period = 0) THEN
@SomeVal
WHEN...
...
ELSE
@SomeVal OR @SomeVal - 1
END
自然,这会引发此错误:关键字“OR”附近的语法不正确。在 ELSE 语句中
因此我的问题......我可以用来完成这个的正确/替代逻辑是什么?
先感谢您