如果变量为空或NULL,则省略AND语句

时间:2014-02-25 20:08:07

标签: sql sql-server

我有一个WHERE语句

Where [State] in (@StateCode)
And LocationCode in (@LCode)

但有时候@LCode会是空白的。如果我用空白运行它,我会返回0行。如果我在没有“And LocationCode ...”的情况下运行它,我会得到结果。 我想要完成的是,如果@LCode为空,请不要使用“And Location ...”语句。

我该如何做到这一点?

感谢。

1 个答案:

答案 0 :(得分:3)

Where [State] in (@StateCode)
AND  (LocationCode in (@LCode) OR @LCode = '' OR @LCode IS NULL)

如果@LCode为空字符串或@LCode为null,则返回结果。