外面包了一层${}的时候,里面的为空查全部怎么写呢

${if(len(date)==0,

"   select * from  data

    if(len(data)==0,"","and data in ('"+data+"')")

"

,"")}

image.png

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

${if(len(date)==0,

" select * from  data"

    +if(len(data)==0,"","and data in ('"+data+"')")

,"")}

  • yzm529517 yzm529517(提问者) 不能 if(len(data)==0,"","and data in ('"+data+"')")直接改这块吗我现在是获取不到data参数了
    2025-08-28 14:35 
最佳回答
0
华莉星宸Lv7专家互助
发布于2025-8-28 14:30(编辑于 2025-8-28 14:36)

直接这样呗

select * from  data
WHERE 
    ${if(len(data)==0,"and data in ('"+data+"')","1=2")}

--------------------

简单除暴的写法

${if(rq<today(),"/*","")}
SQL1部分
${if(rq<today(),"*/","")}

${if(rq>=today(),"/*","")}
SQL2部分
${if(rq>=today(),"*/","")}

  • yzm529517 yzm529517(提问者) 不行啊我最外层有if判断根据if不同执行不同的sql
    2025-08-28 14:33 
  • 华莉星宸 华莉星宸 回复 yzm529517(提问者) 给你个简单除暴的写法
    2025-08-28 14:36 
最佳回答
0
用户k6280494Lv6专家互助
发布于2025-8-28 14:36

${if(len(date)==0,if(len(data)==0,"select * from  data","select * from  data where data in ('"+data+"')")

,"")}

  • 4关注人数
  • 51浏览人数
  • 最后回答于:2025-8-28 14:36
    请选择关闭问题的原因
    确定 取消
    返回顶部