首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用IN运算符在reporting services中进行筛选

使用IN运算符在reporting services中进行筛选
EN

Stack Overflow用户
提问于 2013-11-08 00:08:01
回答 11查看 100.5K关注 0票数 39

有人能建议在表过滤器中使用IN运算符时应该使用什么语法吗?我试过下面的方法,但是snytax是错误的:

EN

回答 11

Stack Overflow用户

发布于 2013-12-11 06:46:19

我对这个也遇到了一些麻烦。微软的own documentation声明,在值框中应该可以使用简单的逗号分隔的值列表。这是令人困惑的,因为它没有。至少对我来说没有,我正在使用SSRS 2012和Visual Studio 2010。

事实证明,当您使用IN运算符时,SSRS需要一个值数组。有许多方法可以使此功能适用于过滤器。以下示例将在表达式编辑器中键入。

第一种方法(也是下面链接的博客中解释的方法)是简单地在字符串值中键入逗号分隔列表,然后对其使用拆分函数。

=split("2B,2C",",")

或者,您可以从多值参数派生列表。多值参数已经是一个数组,所以您所要做的就是通过参数表达式引用它,如下所示。

=Parameters!MultiValueParam.Value

我是通过下面的博客了解到这个信息的。http://sqlblogcasts.com/blogs/simons/archive/2007/11/20/RS-Howto--Use-the-IN-operator-in-a-filter-expression.aspx

票数 46
EN

Stack Overflow用户

发布于 2014-04-14 06:52:00

这实际上是有效的:

=CStr("Value1,Value2,Value3,Value4,etc").Split(",")

这在SSRS 2012中进行了测试。

票数 21
EN

Stack Overflow用户

发布于 2018-07-26 07:25:51

"value1" "value2"

只有一个空格,没有逗号,对我很有效。有趣的是,回过头来看测试之后,它看起来像

value1, value2

带逗号,不带引号。如果我剪切它,然后将它直接粘贴回相同的字段,它不起作用。这是一些错误的s**t。

基础数据类型为nvarchar(10),不为空

使用VS 2017和SSRS 2016进行了测试

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19840813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档