如何解决是否可以针对报表生成器中参数的标签添加多个值?
我正在使用报表生成器,并且想要针对标签添加多个值(可用值 > 指定值):
示例:
Label = "labelone" Value = Value1,Value2...
当我运行报告时,我收到一条消息,指出 Parameter1 丢失。
我尝试了以下针对 value:Value1、Value2 和 'Value1'、'Value2'
我的查询在 where 子句中有以下内容:WHERE (FIELD in (@Parameter1))
谢谢
解决方法
您不能直接执行此操作,因为将传递给查询的内容是
WHERE Field IN ('Value1,Value2')
或
WHERE Field IN ('''Value1'',''Value2''')
这样做的方法是使用表值函数拆分标签,如果您拥有相当新版本的 SQL Server(我认为这是在 SQL2016 中引入的),则可以使用 string_split。如果您有旧版本,则可以使用大量字符串拆分函数示例。
一旦你有了你的函数,你就可以加入它的结果,查询将类似于
DECLARE @pValues TABLE (myValues varchar(10))
INSERT INTO @pValues
SELECT * FROM string_split(@myReportParameter,',')
SELECT *
FROM myTable a
JOIN @pValues p on a.Field = p.myValues
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。