TJH*_*TJH 3 sql case case-statement where-clause
我一直在尝试为下面的查询创建一个条件where子句,但我一直看到很多替代方案,我不知道在这种情况下使用什么.
我需要的是这样的东西:(当然这个代码是错误的)
where casCaseType='m'
and casCurrentWorkflowID=990
and cmsDateCreated between @FromDate and @ToDate
CASE @WFStatus
WHEN @WFStatus=1 then eveworkflowID<100
WHEN @WFStatus=2 then eveworkflowID<200
WHEN @WFStatus=3 then eveworkflowID<300
WHEN @WFStatus=4 then eveworkflowID<400
ELSE 0
END
Run Code Online (Sandbox Code Playgroud)
因此,当我选择WFStatus参数为1时,它会自动使用where子句的那一部分,只显示那些eveworkflowID小于100的结果.
任何帮助将不胜感激!
谢谢
WHERE casCaseType='m'
AND casCurrentWorkflowID=990
AND cmsDateCreated between @FromDate and @ToDate
AND eveworkflowID <
CASE @WFStatus
WHEN 1 THEN 100
WHEN 2 THEN 200
WHEN 3 THEN 300
WHEN 4 THEN 400
ELSE 0
END
Run Code Online (Sandbox Code Playgroud)