if判断,如果是当月一号,查询上月数据。如果不是当月一号,查询当月数据。if判断条件怎么写?

${if(day = "01","and substr(a.ZDATE,0,6) = to_char(sysdate-1,'yyyymm')","and substr(a.ZDATE,0,6) = to_char(sysdate-1,'yyyymm')")}

这样写会报错,有好的方法吗?

企业微信截图_16401619734348.png

FineReport AUUUUUUU 发布于 2021-12-22 16:24 (编辑于 2021-12-22 16:32)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
檬茶茶Lv4初级互助
发布于2021-12-22 16:30(编辑于 2021-12-22 16:35)

拼接的sql都能跑吗

图片.png

  • AUUUUUUU AUUUUUUU(提问者) 可以的
    2021-12-22 16:31 
  • 檬茶茶 檬茶茶 回复 AUUUUUUU(提问者) 我试了一下这样没问题,你看看是不是拼接sql的问题
    2021-12-22 16:35 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-12-22 16:27

image.png

  • AUUUUUUU AUUUUUUU(提问者) 不行,还是报错
    2021-12-22 16:30 
  • Z4u3z1 Z4u3z1 回复 AUUUUUUU(提问者) 1、把参数day改个名称不要和系统自带的函数重名 2、把SQL全贴出来
    2021-12-22 16:34 
最佳回答
0
snrtuemcLv8专家互助
发布于2021-12-22 16:31

判断条件是,day="1"

报错是你的语句问题,检查下

最佳回答
0
CD20160914Lv8专家互助
发布于2021-12-22 16:36

${if(day_s=1," and substr(a.ZDATE,1,6)=to_char(to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd'),'yyyymm')","and substr(a.ZDATE,1,6) = to_char(sysdate,'yyyymm')")}

  • 4关注人数
  • 598浏览人数
  • 最后回答于:2021-12-22 16:36
    请选择关闭问题的原因
    确定 取消
    返回顶部