这样写怎么不对

select id,day,sum(n )from data where 1=1

${if(cx == 0,"and id = '" + jg + "'","and id in ('"+SUBSTITUTE(jg,",","','")+"')")} 

group by id,day

其中参数cx是单选框组,jg是下拉框

为什么实现不了功能

FineReport yzm203888 发布于 2023-3-16 14:28
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-3-16 14:31

select id,day,sum(n) from data where 1=1

${if(LEN(cx) == 0,"and id = '" + jg + "'","and id in ('"+SUBSTITUTE(jg,",","','")+"')")} 

group by id,day

image.png

最佳回答
0
snrtuemcLv8专家互助
发布于2023-3-16 14:32

select id,day,sum(n) from data where 1=1

${if(len(cx) == 0,"and id = '" + jg + "'"," and id in ('"+SUBSTITUTE(jg,",","','")+"')")} 

group by id,day

  • yzm203888 yzm203888(提问者) 为什么id in()后面这部分不起作用,jg是下拉框,可以选择全部吗
    2023-03-16 14:41 
  • snrtuemc snrtuemc 回复 yzm203888(提问者) 后面没生效,是需要cx控件被选中才可以触发,下拉框没有多选全选功能,要下拉复选框,
    2023-03-16 14:43 
最佳回答
0
PILGRIMLv5初级互助
发布于2023-3-16 14:45

SUBSTITUTE影响计算效率,按照下面的改一下试试

select id,day,sum(n )from data where 1=1

${if(cx == 0,"","and id in ('"+jg+"')")} 

group by id,day

1.jpeg

  • 2关注人数
  • 292浏览人数
  • 最后回答于:2023-3-16 14:45
    请选择关闭问题的原因
    确定 取消
    返回顶部