where子句参数,但如果为空,则返回all,包括null

时间:2015-06-03 07:22:58

标签: sql-server-2008 null where

我正在SQL Server 2008 R2上提取数据(最后使用Microsoft excel查询中的脚本)。根据{{​​1}}中的参数,该查询包含多个where子句。

但是我的脚本问题只是在excel cells中进行设计,我们希望允许参数留空。 虽然如果我这样做,它只返回不是management studio的值。 我需要一些东西:

nulls

但我无法弄清楚如何实现这一目标。

2 个答案:

答案 0 :(得分:1)

她是如何做到这一点的:

WHERE .... AND (ND.Title = @param1 OR @param1 = '' OR @param1 IS NULL)

答案 1 :(得分:0)

CASE子句语法存在问题。这样做:

WHERE ....
AND ND.Title = CASE WHEN @param1 = 'blank' 
                    THEN "Return all including null" 
                    ELSE "Return" END