【问题标题】:Group by month Google Analytics / BigQuery按月分组 Google Analytics / BigQuery
【发布时间】:2018-08-10 14:52:54
【问题描述】:

我对 BigQuery 很陌生,并且有一个关于使用 Google Analytics 数据 (StandardSQL) 对 Date 进行分组的问题。数据目前是每日级别的,如何将其汇总到年/月级别?

期望的结果:年/月级别的数据 + 仅选择过去 12 个月。

#StandardSQL
SELECT
TIMESTAMP(PARSE_DATE('%Y%m%d',date)) as Date,
SUM(totals.visits) AS Visits,
totals.timeOnSite AS TimeOnSite,
totals.newVisits AS NewVisit
FROM
`XXXX.ga_sessions_20*`
WHERE
_TABLE_SUFFIX >= '180215'
GROUP by
Date,
TimeOnSite,
NewVisit

提前致谢!

【问题讨论】:

    标签: google-analytics google-bigquery


    【解决方案1】:

    由于您将数据选择限制在上一年,并且如果您的数据库中有一个记录访问日期的字段,您可以使用此查询获得每月的汇总结果:

    #StandardSQL SELECT EXTRACT(MONTH FROM 'date_field_of_the_visit') AS Month, sum(totals.visits) AS Visits FROM 'XXXX.ga_sessions_20*' WHERE _TABLE_SUFFIX >= '170312' Group by Month

    【讨论】:

      【解决方案2】:

      您可以为此使用DATE_TRUNC 函数 (https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#date_trunc):

      #StandardSQL
      SELECT
      DATE_TRUNC(PARSE_DATE('%Y%m%d',date), MONTH) as MonthStart,
      SUM(totals.visits) AS Visits,
      totals.timeOnSite AS TimeOnSite,
      totals.newVisits AS NewVisit
      FROM
      `XXXX.ga_sessions_20*`
      WHERE
      _TABLE_SUFFIX >= '180215'
      GROUP by
      Date,
      TimeOnSite,
      NewVisit
      

      【讨论】:

        猜你喜欢
        • 2021-02-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多