mysql - 如何在 Google Big Query 中总结月份?
问题描述
我正在使用谷歌大查询,我试图总结每个月的数据(每天给出)。
SELECT sum(EXTRACT(MONTH FROM date)) as month, region_name, avg(stringency_index) as stringency_index, sum(deaths) as deaths FROM `bigquery-public-data.covid19_govt_response.oxford_policy_tracker`
WHERE (stringency_index is not null) and (region_name = "New York" OR region_name = "Florida") AND (date BETWEEN '2020-05-01' AND '2020-12-30')
GROUP BY region_name, date
ORDER BY EXTRACT(MONTH FROM date);
但它仍然每个月显示 30 多行,让我相信它不是对月份求和,但仍然按数据向我提供数据。我会使用 TRUNC 函数吗?问题是这个数据集中日期的列标签是日期,所以如果日期既是列名又是变量,我不知道如何 TRUNC(MONTH as date)。
任何帮助表示赞赏。
谢谢你,约尼
解决方案
首先,我建议截断日期。然后:
SELECT date_trunc(date, month) as month, region_name,
avg(stringency_index) as stringency_index,
sum(deaths) as deaths
FROM `bigquery-public-data.covid19_govt_response.oxford_policy_tracker`
WHERE stringency_index is not null and
region_name IN ('New York', 'Florida') AND
date BETWEEN '2020-05-01' AND '2020-12-30'
GROUP BY region_name, month
ORDER BY month;
您的查询的问题是您正在汇总date
. 您可以通过按月汇总来修复它;我认为完整的日期更安全——尽管 COVID 数据尚未存在一整年,所以现在,您不必担心不同年份的几个月的数据。
推荐阅读
- python - 加载并从它们停止的时期继续运行
- c - 在 Gtk.Entry 的光标处显示 Gtk.Popover
- python - Python:转置和分组数据框
- oop - 更改 KivyMD 菜单中主按钮的值的问题
- javascript - 未检测到使用 javascript 的自动填充
- glsl - 是否有用于 mpv 的 GLSL 降噪器?
- python - Django OSError: [WinError 123] 文件名、目录名或卷标语法不正确
- python - 在 Python 中使用 Selenium 捕获浏览器崩溃
- javascript - 对象在类之外没有属性
- powerbi - Power BI、DAX、多对一和关系表