多个查询参数为空查询全部

image.png实在不会写了请大神指教!

FineReport 小马奔腾 发布于 2023-11-17 15:26
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CovidLv3高级互助
发布于2023-11-17 15:27(编辑于 2023-11-17 15:36)

https://help.fanruan.com/finereport10.0/doc-view-4476.html   参数为空显示全部

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

select *  from wtk_all

where 1=1 and

${if(len(wtk_fk_wcqk)==0,"(1=1","wtk_fk_wcqk = '" + wtk_fk_wcqk+ "'")}

${if(len(wtk_zr_bm_one)==0,"","or wtk_zr_bm_one = '" + wtk_zr_bm_one+ "'")}

${if(len(wtk_time_fx)==0," )"," or wtk_time_fx = '" + wtk_time_fx+ "')")}

  • 小马奔腾 小马奔腾(提问者) 第二个查询不好使啊
    2023-11-17 16:09 
  • Covid Covid 回复 小马奔腾(提问者) 不好使什么意思?你的原始SQL用的or只要满足其中一个就行
    2023-11-17 16:12 
  • 小马奔腾 小马奔腾(提问者) 回复 Covid 查询wtk_zr_bm_wcqk这个条件没反应。 你的原始SQL用的or只要满足其中一个就行,这啥意思没明白,大佬
    2023-11-17 16:14 
  • Covid Covid 回复 小马奔腾(提问者) 其它的错误先放一边)你看你的截图嘛 三个条件用的or,只要其中一个成立就可以就有数据,需要同时成立要用and
    2023-11-17 16:21 
  • Covid Covid 回复 小马奔腾(提问者) (先不谈其它的问题)你看你的截图,你SQL里面三个条件用的OR连接,意思就是只要其中一个条件成立就可以查询出数据
    2023-11-17 16:24 
最佳回答
0
yzm163059Lv4见习互助
发布于2023-11-17 15:31

select *  from wtk_all

where 1=1

${if(len(wtk_fk_wcqk)==0,"","AND wtk_fk_wcqk = '" + wtk_fk_wcqk+ "'")}

${if(len(wtk_zr_bm_one)==0,"","AND wtk_zr_bm_one = '" + wtk_zr_bm_one+ "'")}

${if(len(wtk_time_fx)==0,"","AND wtk_time_fx = '" + wtk_time_fx+ "'")}

数据集换成这个试下

最佳回答
0
金色年华禁止访问初级互助
发布于2023-11-17 15:32(编辑于 2023-11-17 15:33)

参数为空,请用这样的,以及后期的日期需要区间段的

select  *     FROM [ewangong]   where  1=1

 ${if(len(starttime)=0,""," and riqi>='"+starttime+"'")}

 ${if(len(endtime)=0,""," and riqi<='"+endtime+"'")}  

  ${if(len(arsdjname)=0,""," and arsdjname='"+arsdjname+"'")} 

 order  by riqitime desc

以上语句供参考,

或者你看一下这里的视频,里面带有自动生成数据集模板,拿来就可以套用

https://edu.fanruan.com/video/557

  • 小马奔腾 小马奔腾(提问者) select * from wtk_all where 1=1 and ${if(len(wtk_fk_wcqk)==0,\"(1=1\",\"wtk_fk_wcqk = \'\" + wtk_fk_wcqk+ \"\'\")} or wtk_zr_bm_one=\"${wtk_zr_bm_one}\" 这么写是不是不对啊,
    2023-11-17 15:59 
  • 金色年华 金色年华 回复 小马奔腾(提问者) or,改成and就可以
    2023-11-17 22:36 
  • 1关注人数
  • 323浏览人数
  • 最后回答于:2023-11-17 15:36
    请选择关闭问题的原因
    确定 取消
    返回顶部