SSRS参数需要具有Null的MulitSelect

时间:2017-07-11 21:07:20

标签: sql reporting-services

此时我并不是百分之百确定我需要问什么,但这是我现在想到的最好的。

我有一个从查询生成的SSRS参数。它将填充类似于

的列表
Apple
Orange
Banana

然后我需要在另一个查询的where语句中使用此参数(称之为@Fruit)。这就是问题所在,我也可能需要搜索Null

Null我使用

添加@Fruit的占位符
Select fruit
From fruitTable
Union All
Select Null

这不会让列表填充在SSRS中,因为我正在进行多项选择,并且在多项选择中不允许Null

所以两个问题,我如何在参数列表填充中理想地允许Null或占位符(更像用户友好,如Not Entered),其次如何在主要内容中查询查询?

其他信息

示例表

FruitTable
-----------
Fruit
=====
Apple
Orange
Banana

PeopleTable
---------------------
Name | FavoriteFruit
==== | ==============
Bob  | Apple
John | Orange
Bill | Null

示例查询

Select Name, FavoriteFruit
From PeopleTable
Where FavoriteFruit in (@Fruit)

In this example @Fruit would be ('Apple','Orange',Null) ideally

1 个答案:

答案 0 :(得分:1)

Or is null是一个很好的起点:

Select Name, FavoriteFruit
From PeopleTable
Where FavoriteFruit in (@Fruit)
or FavoriteFruit  is null

当然,你可以添加'无'作为一种选择:

Select Name, FavoriteFruit
From PeopleTable
Where FavoriteFruit in (@Fruit)
or (FavoriteFruit is null and 'None' in (@Fruit))