我正在构建 SSRS 中的报告之一,其中参数值可以是 NULL 也可以包含 NON-NULL 值。
现在,如果用户选择的值为 NULL(来自下拉列表),那么 SQL 查询将是
field-Name IS NULL
如果用户选择的值是 NULL 以外的任何值,则 SQL 查询将是
field-Name IN (@parameter-values)
我需要使用 Case-When 将此条件放在 WHERE 子句中,以便用户给出的任何输入都由 SQL 查询处理并返回适当的结果。用户可能会从下拉列表中同时选择 NULL 和 Non-NULL 值。
请指导如何将“案例”条件放在 where 子句中或是否存在任何其他解决方案
更新:
WHERE @IR_Project_Type =
(
CASE WHEN ([IR Project Type] = NULL) THEN ([IR Project Type] IS NULL)
END
)
// 'IS NULL' 条件会引发错误。