【发布时间】:2015-11-20 15:33:00
【问题描述】:
我在 SSRS 中工作,我试图弄清楚如果从多选参数中选择了字符串中的某个值,如何显示一行。假设我们有一张这样的表:
ID Animals
-------------
1 Cat, dog, bird
2 Dog
3 Dog, pig, Cat
每当我在参数中选择 dog 时,都应显示所有 3 行。如果我要选择猫,应该只显示 2 行。我之前使用过 InStr 函数来显示或隐藏列,但我不确定如何使用它来选择行。我试过InStr(Fields!Animals.Value,"Dog"),但它只带来了那一行。
任何建议或意见将不胜感激!
【问题讨论】:
-
您遇到的困难是在单个列中存储多个值的结果,以及为什么应该避免这种情况。如果您将 LIKE 子句与通配符一起使用,您会找到您的数据,但如果您有多个记录,性能会很慢。这是一个糟糕的设计。
-
好吧,我一开始就拆分了函数,但有人问他们是否选择了某个值来拉回用它标记的附加值。拆分后,只有狗会显示而不是全部显示。
标签: sql reporting-services ssrs-2008-r2