【发布时间】:2016-05-06 11:03:03
【问题描述】:
我有一个多选参数,它的列表上有逗号,我的数据集使用函数 split 作为我的参数,因为它在 SP 中,所以我的 where 子句如下所示:
WHERE [CURRENTPRODATT_DIV_NAME] IN (SELECT VALUE FROM DBO.FnSplit(@ProductDivision,','))
例如,在多选参数中勾选了“SMART-UPS 1,5KVA”和“BACK-UPS”,多选会将第一个值视为两个不同的值,即“SMART-UPS 1 “和5KVA”。所以在我的Split函数中它会显示这个结果:
Row Value
1 SMART-UPS 1
2 5KVA
3 BACK-UPS
由于“SMART-UPS 1”和“5KVA”不是有效值,我不会得到“SMART-UPS 1,5KVA”下的记录。
有人可以提供有关如何解决此问题的想法吗?任何回复将不胜感激。
【问题讨论】:
-
可能是将值存储在带有 ID 的单独表中并将 ID 传递到存储过程而不是文本值的好理由
标签: sql-server stored-procedures reporting-services ssrs-2012