Window Function Over子句

时间:2015-08-05 08:01:35

标签: google-bigquery

在Over Clause文档中提到“Rows”和“Range”..

OVER (
      [PARTITION BY <expr>]
      [ORDER BY <expr>]
      [ROWS <expr> | RANGE <expr>]
     )

但是,我找不到有关其功能或任何样本的详细说明。有人可以解释一下它们是什么以及如何使用它们?

1 个答案:

答案 0 :(得分:4)

请参阅https://stackoverflow.com/a/27574474处的用户'链轮'答案:

ROWS和RANGE允许窗口函数查看用户定义的行窗口,例如前面的27运行移动平均值:

SELECT spend,
       SUM(spend) OVER (PARTITION BY user ORDER BY date ROWS BETWEEN 27 PRECEDING AND CURRENT ROW),
       user,
       date
FROM user_spend;