2

我是 SSRS 的新手,我的任务是提供一份报告,允许用户选择 NULL、非 NULL 或两者。

例如

Name | ID
BOB     1
ALICE   2
DAVE    NULL
ROGER   NULL

用户需要能够选择具有 ID 值的记录和/或没有 ID 值的记录。所以这将是一个多选参数(ID,NO ID,ALL)。

我可以使用 sql 查询使其工作,但不确定如何使其与可以是其中一个或两者的用户参数一起工作。

id 字段是小数。

关于如何做到这一点的任何建议?

谢谢。

4

2 回答 2

1

在您的报告参数的常规选项卡中。有一个Allow Null Values选项。选中该框。

还将您的查询更新为

From UserTable
Where (ID IS NULL OR ID IN (@IDparam))

如果您需要了解更多关于多选参数的信息,请点击以下链接 http://jsimonbi.wordpress.com/2011/01/15/using-multi-select-with-stored-procedures/ http://technet.microsoft.com /en-us/library/aa337396(v=sql.105).aspx

于 2013-08-25T08:21:18.023 回答
1

一种方法是在 WHERE 子句中包含如下条件:

and (ID is null and 'NO ID' in @Parameter or
     ID is not null and 'ID' in @Parameter)

或者,如果非空 ID 值始终为正,则可以使用“NO ID”和“ID”作为参数值标签,实际可用分别为 0 和 1,并使用如下条件:

and sign(coalesce(ID, 0)) in @Parameter

(这些条件在传统 SQL 中不起作用——其中@Parameter始终是单值的——但应该在 SSRS 中起作用。)

于 2013-08-24T18:07:26.557 回答