如何在BigQuery中将日数据聚合为可被Data Studio识别的月度日期
解决方案
BigQuery端聚合逻辑
你之前使用FORMAT_DATE返回字符串的方案丢失了日期类型属性,所以无法被Data Studio识别为时间维度。正确的做法是用DATE_TRUNC函数将日期对齐到当月第一天,返回结果仍为标准DATE类型,可直接被Data Studio识别,同时实现月度聚合。
示例完整查询:
SELECT -- 将日期对齐到当月第一天,保留DATE类型 DATE_TRUNC(your_date_column, MONTH) AS month_date, -- 按需填写其他聚合指标,示例如下 SUM(pv) AS total_pv, SUM(uv) AS total_uv FROM `你的项目ID.你的数据集.你的日粒度表名` -- 按月度维度分组,完成聚合 GROUP BY month_date ORDER BY month_date
执行该查询后生成的表行数仅为原日粒度表的1/30左右,完全符合你降低处理压力的需求。
Data Studio端配置
- 导入上述聚合后的表作为数据源,确认
month_date字段的类型被识别为日期 - 选中
month_date字段,将显示格式修改为「年月(YYYY-MM)」,这样柱状图x轴只会展示年月,不会显示当月1号的后缀 - 配置钻取功能:
- 新建钻取维度组,依次加入「年度维度」、
month_date两个维度。年度维度可以提前在上述BigQuery查询中用EXTRACT(YEAR FROM your_date_column) AS year生成,也可以直接在Data Studio中创建计算字段,公式为YEAR(month_date) - 将柱状图的x轴设置为该钻取组,默认展示层级选择
month_date(月度),点击钻取按钮即可向上切换到年度维度
- 新建钻取维度组,依次加入「年度维度」、
内容的提问来源于stack exchange,提问作者Sebastian
相关产品推荐
相关产品推荐

