SQL语法查询问题

目前可透过 ',' 去做复选过滤 要如何修改为 ';' 或是将数据集改为 ',' 但不影响原数据集

select * from A AS T1

WHERE 1 = 1

${IF(LEN(Column1)=0,"","AND Column1 IN ('"+REPLACE(Column1,",","','")+"')")} 

cheng1217 发布于 2022-4-13 17:31
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
shinger@126.comLv2见习互助
发布于2022-4-13 17:42

参数控件使用下拉复选框,控件值选择复选框,返回类型选择字符串,分隔符填上;  如果数据集是使用数据库,建议用存储过程处理参数,将参数Column1在参数控件拼接成;分隔的字符串,传入存储过程处理。直接使用SQL语句的话,你的脚本要调整 

select * from A AS T1

WHERE 1 = 1

${IF(LEN(Column1)=0,"","AND Column1 IN ('"+REPLACE(Column1,";","','")+"')")}  这样

因为拼接后的语句大概是这样的 AND Column1 IN ('a';'b') 这里需要将;替换成英文逗号,否则会报SQL语法错误

最佳回答
0
cheng1217Lv5见习互助
发布于2022-4-13 17:35

更动语法已解决

  • 1关注人数
  • 292浏览人数
  • 最后回答于:2022-4-13 17:42
    请选择关闭问题的原因
    确定 取消
    返回顶部