Clickhouse:等效于计算当前行之前的行的窗口均值

时间:2018-07-23 20:10:48

标签: clickhouse

我正在努力寻找滚动均值函数的替代方法。具有典型窗口功能的等效项如下:

select avg(sales) over (partition by country order by date rows between 4 preceding and 1 preceding) as rolling_mean_last_4
from country_sales

非常感谢!

1 个答案:

答案 0 :(得分:1)

目前,ClickHouse不支持全功能窗口功能。不过,通常有一些变通办法。

例如,您可以尝试用GROUP BY + groupArray替换此PARTITION BY,然后使用higher order functions获得所需的结果。如果减少GROUP BY的行数是不可接受的,那么您将必须找到一种正确的方法将其联接回原始表。

听起来很麻烦,但可能会在有利的情况下工作。