in语句的变量,要怎么写?

SELECT DISTINCT b.ainf_place FROM DY_WORKORDER_DETAIL a JOIN DY_WORKORDER_DETAIL_ainf b ON a.id = b.ainf_id WHERE WHERE b.ainf_start_time between '${date}' and '${date1}' and a.question = '甲方检查' and b.place in ('${place}')

and a.question = '甲方检查'

image.png

FineReport yzmXrTpA3762457 发布于 2022-10-12 14:38 (编辑于 2022-10-12 16:00)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
weibwLv7高级互助
发布于2022-10-12 14:40(编辑于 2022-10-12 16:09)

WHERE b.ainf_start_time between '${date}'and '${date1}'

and a.question=甲方检查'

${if(len(place)==0,"","and b.place in ('"+place+"')")}

  • yzmXrTpA3762457 yzmXrTpA3762457(提问者) 不对啊
    2022-10-12 15:42 
  • weibw weibw 回复 yzmXrTpA3762457(提问者) 配合楼下那个,你要把多选的分隔符修改一下
    2022-10-12 15:42 
  • yzmXrTpA3762457 yzmXrTpA3762457(提问者) 回复 weibw 加上了
    2022-10-12 15:44 
  • weibw weibw 回复 yzmXrTpA3762457(提问者) 你把你现在数据集里的SQL截个图
    2022-10-12 15:45 
  • yzmXrTpA3762457 yzmXrTpA3762457(提问者) 回复 weibw SELECT DISTINCT b.ainf_place FROM DY_WORKORDER_DETAIL a JOIN DY_WORKORDER_DETAIL_ainf b ON a.id = b.ainf_id WHERE WHERE b.ainf_start_time between \'${date}\' and \'${date1}\'and b.place in \"(\'\" + \'${place}\' + \"\')\" and a.question = \'甲方检查\'
    2022-10-12 15:48 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-10-12 14:39

 in ('${replace(place,",","','")}')

最佳回答
0
用户k6280494Lv6资深互助
发布于2022-10-12 15:27(编辑于 2022-10-12 15:28)

你那么写是正确的,改一下多选,把返回值类型改为字符串 ',' .如图

1665559525254.jpg

  • 2关注人数
  • 261浏览人数
  • 最后回答于:2022-10-12 16:09
    请选择关闭问题的原因
    确定 取消
    返回顶部