BigQuery,按周求和

问题描述 投票:-1回答:1

我正在使用标准SQL,并试图按周增加每周的产品使用量。

使用下面的代码,我能够在每一行中分别添加其所属的星期和年份。我该如何按周对某项商品的总和进行汇总,然后将其输出到列中,例如最近8周之内。

extract(week from Metrics_Date) as week, EXTRACT(YEAR FROM Metrics_Date) AS year

图像是我的原始数据,项目旁边是星期和年份:

enter image description here

此图像是上面的原始数据,正在进一步分析(将它们分组在一起)。在这里,我要添加列,current_week和星期几的第一天以及那几周的总和。enter image description here

任何帮助将不胜感激。

google-bigquery dayofweek
1个回答
2
投票

顺便说一下,您不需要extract(),您可以执行truncation DATE_TRUNC(your_date, WEEK),它将截断到一周,通常比较容易。

此外,由于截断的结果是一个日期,因此您已经有了一周的第一天。

其余的我相信您已经知道了,但是以防万一:

SELECT DATE_TRUNC(your_date_field, WEEK) AS week, SUM(message_count) AS total_messages FROM your_table GROUP BY 1

© www.soinside.com 2019 - 2024. All rights reserved.