为何if判断条件不能同时生效,只能生效最外层或者是最里层的

${IF(or(LEN(sku)>0,LEN(yj)>0,LEN(ej)>0),

"

SELECT e.yjfl,e.ejfl,e.colthname,a.colthno,colthno1,colthno2,

colthno3,xse_yg,year_time,create_user,create_time,category2

FROM forecast_sales_year a

left join product_info_all e 

on a.colthno=e.colthno

WHERE year_time='"+year+"'

${IF(LEN(sku1)=0,"\"\,\"\AND colthno in ('"+sku1+"')\"\)}

",

"

SELECT * FROM forecast_sales_year

WHERE year_time='"+year+"'+3

")}

FineReport guoyongpeng 发布于 2022-4-6 16:42 (编辑于 2022-4-6 16:52)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2022-4-6 16:49(编辑于 2022-4-6 16:54)

外面套了${}

里面就不需要了,去掉${},需要拼接了,建议把xql拷贝贴出来,我们帮你改

=========

${IF(or(LEN(sku)>0,LEN(yj)>0,LEN(ej)>0),

"SELECT e.yjfl,e.ejfl,e.colthname,a.colthno,colthno1,colthno2,

colthno3,xse_yg,year_time,create_user,create_time,category2

FROM forecast_sales_year a

left join product_info_all e 

on a.colthno=e.colthno

WHERE year_time='"+year+"'"+

IF(LEN(sku1)=0,""," AND colthno in ('"+sku1+"')")

,

"SELECT * FROM forecast_sales_year

WHERE year_time='"+year+"'+3

")}

最佳回答
0
@Lv6资深互助
发布于2022-4-6 16:45

image.png

  • 3关注人数
  • 447浏览人数
  • 最后回答于:2022-4-6 16:54
    请选择关闭问题的原因
    确定 取消
    返回顶部