大佬们,帮忙看下参数

${if(len(yg) == 0 &&  (oop=='00000001' || len(oop)==0)  ,

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from 

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_hxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1   group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_zxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc",

"") }

 ${if(len(yg) != 0 &&  (oop=='00000001' || len(oop)==0)  ,

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from 

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_hxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1  and fzrh='yg' group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_zxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 and fzrh='yg' group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc",

"") }

${if(len(yg) == 0 &&  (oop!='00000001' || len(oop)!=0)  ,

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from 

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_jyshxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1  and dm.lsdwh='"+oop+"' group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_jyszxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 and dm.lsdwh='"+oop+"' group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc",

"") }

当我oop和yg不输入任何数据的时候,应该调用第一个,但是报错,提示我select附近语法错误,单独执行就都可以

FineReport 随心灵 发布于 2023-6-11 17:41 (编辑于 2023-6-11 17:54)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-6-11 18:39(编辑于 2023-6-11 18:40)

语法是错的改成如下:

${if(len(yg) == 0 &&  (oop=='00000001' || len(oop)==0)  ,

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from 

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_hxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1   group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_zxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc",

if(len(yg) != 0 &&  (oop=='00000001' || len(oop)==0) ,

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from  

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_hxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1  and fzrh='yg' group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_zxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 and fzrh='yg' group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc" ,

if(len(yg) == 0 &&  (oop!='00000001' || len(oop)!=0),

"select hx.dwmc,hxzs,zxzs,sum(hxzs+zxzs) from 

           (select xx.dwmc, sum(dm.xmdzzjf) hxzs  from dm_jyshxxm_info  dm

                    left join     xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                   where 1=1  and dm.lsdwh='"+oop+"' group by xx.dwmc )hx 

left join 

           (select xx.dwmc, sum(dm.xmdzzjf) zxzs   from dm_jyszxxm_info  dm

             left join 

                      xx_yxsdwjbsj xx on   dm.dwh=xx.dwh

                      where 1=1 and dm.lsdwh='"+oop+"' group by xx.dwmc ) zx on hx.dwmc=zx.dwmc

where 1=1"

+ if(len(tbsj_ks) == 0,"","and tjny >= '" +tbsj_ks + "'")

+ if(len(tbsj_js) == 0,"","and tjny <= '" +tbsj_js + "'") +"

group by hx.dwmc,hxzs,zxzs

order by hxzs desc","")))}

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

image.png

  • 随心灵 随心灵(提问者) 好的,我试下,非常感谢哈
    2023-06-11 18:53 
  • 随心灵 随心灵(提问者) 哈喽大佬,方便给我说下,我错的原因不,平时有点笨。。。
    2023-06-11 19:31 
  • CD20160914 CD20160914 回复 随心灵(提问者) if多个条件的判断语句 是 if(a=1,\"要的结果\",if(a=2,\"结果2\",if(a=3,\"要的结果3\",\"\")))
    2023-06-11 20:13 
  • CD20160914 CD20160914 回复 随心灵(提问者) 所以上面用了变量的也要用这个语法。这个函数的基本语法要学会了才知道它的标准写法
    2023-06-11 20:13 
  • 随心灵 随心灵(提问者) 回复 CD20160914 这个斜杠有点误导人,可以截个图不
    2023-06-11 22:10 
  • 2关注人数
  • 255浏览人数
  • 最后回答于:2023-6-11 18:40
    请选择关闭问题的原因
    确定 取消
    返回顶部