怎么写才不报错

select product_type,

       responsibility_category,

       sum(returned_quantity) as exodus_rate,

       multiIf('${type}'='订单付款后时间',toYear(toDate(order_payment_time)),

           '${type}'='支付时间',toYear(toDate(payment_date)),

           '${type}'='分厂时间',toYear(toDate(branch_date))) as tyear,

       multiIf('${type}'='订单付款后时间',toMonth(toDate(order_payment_time)),

           '${type}'='支付时间',toMonth(toDate(payment_date)),

           '${type}'='分厂时间',toMonth(toDate(branch_date))) as tmonth

from various_responsibilities

where multiIf('${type}'='订单付款后时间',order_payment_time,

           '${type}'='支付时间',payment_date,

           '${type}'='分厂时间',branch_date)  between toStartOfMonth(subtractMonths(toDate('${end_time}'),4))

    and subtractMonths(toDate('${end_time}'),0)

    ${lf(type=="订单付款后时间","and order_payment_time<='"+end_time+"'",

    if(type=="支付时间","and payment_date<='"+end_time+"'",

    if(type=="分厂时间","and branch_date<='"+end_time+"'",'')))}

GROUP BY product_type,responsibility_category,tyear,tmonth 

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

是不是没隔空?image.png

  • yzme7sTE0397329 yzme7sTE0397329(提问者) 不是
    2022-10-26 15:07 
  • Z4u3z1 Z4u3z1 回复 yzme7sTE0397329(提问者) 什么数据库有这个函数 multiIf()?
    2022-10-26 15:09 
  • yzme7sTE0397329 yzme7sTE0397329(提问者) 回复 Z4u3z1 clickhouse
    2022-10-26 15:13 
  • Z4u3z1 Z4u3z1 回复 yzme7sTE0397329(提问者) 这个就完全不了解了。但从SQL上看你是不是type为空了导致SQL不全
    2022-10-26 15:18 
  • 告白关系 告白关系 条件属性IF些错了
    2022-10-27 11:19 
  • 1关注人数
  • 197浏览人数
  • 最后回答于:2022-10-26 15:01
    请选择关闭问题的原因
    确定 取消
    返回顶部