首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SRS报告: URL参数,多个值

SRS报告: URL参数,多个值
EN

Stack Overflow用户
提问于 2009-09-01 19:14:32
回答 3查看 2.1K关注 0票数 1

类似于这个问题:link

然而我已经掌握了这一点。我的问题是,我们刚刚在工作中添加的一个新报告具有参数值(即:10-新建,20-取消,30-完成)。在我的一生中,我不知道如何为同一个参数传递多个值。(因此,在前面的示例中,选择10-New和30-Complete作为参数值)。

这可以做到吗?如果是这样,又是如何做到的呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-01 19:52:21

我相信你和其他报告一样,只是用逗号分隔你的列表(例如,10,20),这就是为什么你需要一个函数来将逗号分隔的字符串分割成一个表,用于你的where子句(听起来你已经介绍过了)

票数 1
EN

Stack Overflow用户

发布于 2009-09-01 20:53:39

如果要向参数传递多个值,请首先确保将该参数标记为允许多个值。

然后,在您的查询中,确保使用某种拆分函数来分隔字符串。

票数 0
EN

Stack Overflow用户

发布于 2009-10-31 09:11:31

你不需要拆分它。您可以执行以下操作...

确保逗号-delim字符串中的第一个和最后一个值用引号括起来(我使用udf来完成此操作)

代码语言:javascript
复制
IF CHARINDEX(',', @Param) <> 1 SET @Value = ',' + @Value        
IF CHARINDEX(',', REVERSE(@Value)) <> 1 SET @Value = @Value + ','

然后,将用逗号和通配符表达式过滤的字段括起来,并使用LIKE比较来过滤您的子句...

代码语言:javascript
复制
SELECT
    t.Field1,
    t.Field2
FROM
    dbo.Table1 t
WHERE
    '%,' + t.Field + ',%' LIKE @Parm

在任何字符串字段上都像梦一样工作,但在日期和整数等方面可能会变得棘手。

然后,您还必须将要过滤的字段强制转换为VARCHAR。

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

https://stackoverflow.com/questions/1364156

复制
相关文章

相似问题

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