我有一个非常大的存储过程,我希望在WHERE
的情况下在最后包含一个@myparameter=1
子句。我不希望存储过程在@myparameter=0
时关注WHERE子句。有没有办法用CASE
或类似的东西来做到这一点?
答案 0 :(得分:1)
WHERE @myparameter=0 OR (insert the current conditions here)
答案 1 :(得分:0)
添加修改版本的where而不是你的
where (@myparemeter = 0 or (@myparameter = 1 and (your where conditions here)))
答案 2 :(得分:0)
如果你真的想使用CASE,就像这样...
WHERE
CASE
WHEN (@myparameter=0) THEN 1
WHEN (@myparameter=1) AND (rest of where clause) THEN 1
ELSE 0
END = 1