【发布时间】:2022-01-27 01:36:09
【问题描述】:
在 postgres SQL 中,如何将唯一标识符 (rn?) 分配给查询的前 n 行,并将唯一标识符分配给随后的 n 行?目标是按代码和唯一标识符进行分组,有关详细信息,请参阅实际与预期的屏幕截图。
实际查询
SELECT
*,
SUM(eps_diluted) OVER (PARTITION BY ticker ORDER BY rn ASC ROWS BETWEEN CURRENT ROW AND 3 FOLLOWING) AS test_eps_diluted
FROM(
SELECT
"PK",
ticker,
period_end_date,
eps_diluted,
ROW_NUMBER() OVER ( PARTITION BY ticker ORDER BY period_end_date DESC ) rn
FROM "ANALYTICS"."vQUARTERLY_MASTER_MATERIALIZED"
--WHERE ticker = 'ACN'
ORDER BY ticker, period_end_date DESC
) q
ORDER BY ticker, period_end_date desc
【问题讨论】:
标签: postgresql group-by row-number