SQL滑动窗口聚合(不使用窗口函数)

SQL滑动窗口聚合(不使用窗口函数),sql,window-functions,sliding-window,analytic-functions,Sql,Window Functions,Sliding Window,Analytic Functions,我正在寻找一个查询,可以通过以下方式在21天前聚合数据: “我的表”有以下列: 帐户ID、日期、度量 我需要,对于每个帐户,前21天的合计(测量)日期。 你知道如何在没有窗口/分析函数的纯SQL中实现吗? (我在一个BI产品中编写SQL,它在分析函数中不受支持)一个效率相当低的方法使用相关的子查询。如果您希望在前21天内对每个条目执行以下操作: select t.*, (select sum(t2.measure) from t t2 where t

我正在寻找一个查询,可以通过以下方式在21天前聚合数据: “我的表”有以下列: 帐户ID、日期、度量

我需要,对于每个帐户,前21天的合计(测量)日期。 你知道如何在没有窗口/分析函数的纯SQL中实现吗?
(我在一个BI产品中编写SQL,它在分析函数中不受支持)

一个效率相当低的方法使用相关的子查询。如果您希望在前21天内对每个条目执行以下操作:

select t.*,
       (select sum(t2.measure)
        from t t2
        where t2.accountid = t.accountid and
              t2.date > t.date - interval '21' day
       ) as sum21
from t;

并非日期函数因数据库而异,因此您的特定数据库可能有另一种减去21天的方法。

一种效率相当低的方法使用相关子查询。如果您希望在前21天内对每个条目执行以下操作:

select t.*,
       (select sum(t2.measure)
        from t t2
        where t2.accountid = t.accountid and
              t2.date > t.date - interval '21' day
       ) as sum21
from t;

并非日期函数因数据库而异,因此您的特定数据库可能有另一种减去21天的方法。

您能提供示例数据和所需结果吗?从什么开始21天?你能提供样本数据和期望的结果吗?从什么地方回来21天?