数据集的where条件怎么用or写

目前的写法是

${if(len(月份)==0, "", " and month  in ('"+月份+"')")}

但是,现在月份控件(多选)的传值是01,02,03这种,不是 01','02','03 这种,怎么样改这个sql才能正确,不用in用or连接也行

用的复选按钮组控件~不能改分隔符

12083492 发布于 2019-11-14 16:12 (编辑于 2019-11-14 16:23)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
黄源Lv6中级互助
发布于2019-11-14 16:26(编辑于 2019-11-14 16:54)

replace(月份,',',"','"),逗号替换成单引号加逗号


${if(len(月份)==0, "", " and month  in ('"+replace(月份,',',"','")+"')")}

image.png

sql:

select 1 from dual where 1=1 ${if(len(月份)==0, "", " and month  in ('"+replace(月份,',',"','")+"')")}

结果:

select 1 from dual where 1=1  and month  in ('1','2')


  • 12083492 12083492(提问者) 整句话怎么加
    2019-11-14 16:37 
  • 12083492 12083492(提问者) 回复 黄源 两种都报错
    2019-11-14 16:52 
  • 黄源 黄源 回复 12083492(提问者) 看修改
    2019-11-14 16:53 
  • 黄源 黄源 回复 12083492(提问者) 我这个直接用肯定报错,dual表就没有month这个字段
    2019-11-14 16:56 
  • 黄源 黄源 回复 12083492(提问者) 你要换成你的啊
    2019-11-14 16:56 
最佳回答
0
JackloveLv7高级互助
发布于2019-11-14 16:14(编辑于 2019-11-14 16:17)

分隔符 改成',' 语句不用改

微信图片_20191114161558.png

  • 12083492 12083492(提问者) 用的不是多选控件,用的是复选按钮组控件
    2019-11-14 16:22 
  • Jacklove Jacklove 回复 12083492(提问者) 一样的道理 都是分隔符改一下就好了
    2019-11-14 16:28 
最佳回答
0
萌萌的呆贼Lv4初级互助
发布于2019-11-14 16:25

image.png

  • 4关注人数
  • 483浏览人数
  • 最后回答于:2019-11-14 16:54
    请选择关闭问题的原因
    确定 取消
    返回顶部