我可以使用标志来选择不同的WHERE子句吗?像这样的东西。基于标志的Where子句中的条件
SELECT fields
from T3 t3
left outer join T1 t1 on T1.Id=t2.Id
WHERE
CASE
WHEN @Status <> 1
THEN (t3.Id = @SId AND sh.StatusId = 3 AND k.StatusId = 1)
ELSE t2.Id = @SID AND t2.StatusID = 12
GROUP BY whatever
您正在从T3中选择并加入T1,其中T1 = T2但您没有加入T2的任何地方?你缺少代码吗? – Taryn 2012-03-27 21:50:27
是啊!对错字感到抱歉。我正在做同样的事情,但得到一个分析错误。 '='附近语法不正确。在WHERE语句中。 – user424134 2012-03-27 21:59:24
你在查询中加入T2吗?如果是的话,你可以编辑问题并发布完整的查询? – Taryn 2012-03-27 22:02:11