如何在数据集中,使用replace函数替换参数中的符号

参数为一个文本框,可以输入:字段1,字段2

想在数据集中,在sql里拼接in的形式,将字段1,字段2转化为:字段1','字段2,

即:将参数里的,转化为:',',利用公式的方法,这是我现在想到的方式,可能涉及转义,查询时总是报错

FineReport xinchaois 发布于 2021-4-2 15:10 (编辑于 2021-4-2 15:10)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
1
烟尘Lv6高级互助
发布于2021-4-2 15:11(编辑于 2021-4-2 15:13)

建议做成下拉复选框,返回字符串,分割符用','

如果直接写sql,代码:where 字段 in ('${replace(参数名,",","','")}')

最佳回答
0
axingLv6专家互助
发布于2021-4-2 15:12(编辑于 2021-4-2 15:22)

where 字段 in ('${replace(参数,",","','")}')

最佳回答
0
snrtuemcLv8专家互助
发布于2021-4-2 15:12

直接sql中,用

select * from 表 where 1=1

'${if(len(控件名)==0,""," and 列名 in ('"+replace(split(控件名,","),",","','")+"')")}'

最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-4-2 15:13

贴出SQL  另外可以用SQL Server Profiler进行追踪查看数据提交给数据库执行的语句究竟是什么样的,快速定位SQL错误

最佳回答
0
用户S5182147Lv6中级互助
发布于2021-4-2 15:13(编辑于 2021-4-2 15:15)
最佳回答
0
krystal033Lv7高级互助
发布于2021-4-2 15:18

这样不累吗  直接下拉复选框吧  你一不小心吧逗号输成中文状态 又要报错

  • 6关注人数
  • 486浏览人数
  • 最后回答于:2021-4-2 15:22
    请选择关闭问题的原因
    确定 取消
    返回顶部