使用间隔汇总前一天的值

我试图在一个case语句中使用Max(date)汇总当天的数字,并使用-interval汇总前一天的数字。

select

product,sum(
    case
      when date_started = max(date_started)
        then volume
    end
  )
  as "Current day's Volume",sum(
    case
      when date_started = max(date_started)
        then revenue
    end
  )
  as "Current day's Revenue",sum(
    case
      when date_started = (max(date_started) - interval '1 day' then volume end) as "Current day's Volume",sum(
        case
          when date_started = (max(date_started) - interval '1 day' then revenue end) as "Current day's Revenue"
        from
          [lifetime_data]

       group by
          1

这是在PostgreSQL上。它不起作用,对我来说也没有明显的错误。

xiaozhi170 回答:使用间隔汇总前一天的值

没有“明显”错误。您看起来不够近。您的第一个汇总是:

sum(case when date_started = max(date_started)
^ aggregation function   ----^ nested aggregation function
        then volume
    end)

您具有嵌套的聚合功能。这是不允许的。

这回答了有关错误是什么的问题。

目前还不清楚您要完成什么。如果您需要帮助解决该查询,请提出一个 new 问题。提供示例数据,所需的结果以及您要实现的逻辑的说明。

本文链接:https://www.f2er.com/3160875.html

大家都在问