select t.*,
(select percentile_cont(earning) over ()
from unnest(ar_earnings) earning
limit 1
) as median_2months
from (select t.*,
array_agg(earnings) over (partition by city
order by month
range between 1 preceding and current month
) as ar_earnings
from t
) t;
您没有提供示例数据,但此版本假定 month 表示月份的递增整数。您可能需要调整 range 取决于类型。
1条答案
按热度按时间hc8w905p1#
如果我理解正确,您可以聚合到一个数组中,然后取消嵌套:
您没有提供示例数据,但此版本假定
month
表示月份的递增整数。您可能需要调整range
取决于类型。