我正在尝试创建一个报告,用户可以在其中选择任一参数选项,它将按所选参数进行过滤,或按两者进行过滤。
目前我正在使用这样的OR语句:
SELECT a,b
FROM table a
WHERE (a = @A) OR (b=@b)
问题是当我尝试为两者输入一个值时,它只过滤一个。如何更改它以便过滤掉每一个但同时保持只过滤一个的能力?
答案 0 :(得分:4)
WHERE (a = @A or @A IS NULL) AND (b=@b OR @b IS NULL)