BigQuery资料每天都会与Google Analytics(分析)相符,但不会超过较大的时间范围

时间:2018-10-04 08:50:37

标签: google-analytics google-bigquery

我正在通过BQ计算跳出的会话(只有1次网页浏览的会话)。 查询正在联接一个表,该表为我提供了所有会话的数量,而一个表则为我提供了跳出的会话。

当我仅在一个特定日期运行查询时,我的数字与GA中的数字匹配,但是如果选择较大的时间范围(例如一个月),则这些数字(仅适用于退回的会话)会关闭。 另外,如果我分别运行每个子查询,那么在任何时间范围内我都会得到正确的数字。

这是我的查询:

SELECT
  A.date AS Date,
  A.Landing_Content_Group AS Landing_Content_Group,
  MAX(A.sessions) AS Sessions,
  MAX(B.Bounced_Sessions) AS Bounced_Sessions
FROM (
  SELECT
    date,
    hits.contentGroup.contentGroup2 AS Landing_Content_Group,
    COUNT(DISTINCT CONCAT(CAST(visitStartTime AS string),fullVisitorId)) AS sessions
  FROM
    `122206032.ga_sessions_201808*`,
    UNNEST(hits) AS hits
  WHERE
    hits.type="PAGE"
    AND hits.isEntrance = TRUE
  GROUP BY
    date,
    Landing_Content_Group
  ORDER BY
    date DESC,
    sessions DESC ) A
LEFT JOIN (
  SELECT
    date,
    hits.contentGroup.contentGroup2 AS Landing_Content_Group,
    COUNT(DISTINCT CONCAT(CAST(visitStartTime AS string),fullVisitorId)) AS Bounced_Sessions
  FROM
    `122206032.ga_sessions_201808*`,
    UNNEST(hits) AS hits
  WHERE
    hits.type="PAGE"
    AND totals.pageviews = 1
    AND hits.isEntrance = TRUE
  GROUP BY
    date,
    Landing_Content_Group
  ORDER BY
    date DESC,
    Bounced_Sessions DESC ) B
ON
  a.Landing_Content_Group = b.Landing_Content_Group
GROUP BY
  Date,
  Landing_Content_Group
ORDER BY
  Date DESC,
  Sessions DESC

我应该得到的:

GA results

当一个月为一个月时,我在该日期的BQ中得到什么:

BQ results

我尝试了不同的JOIN和聚合,但到目前为止仍然未知:)

1 个答案:

答案 0 :(得分:0)

好,我解决了,解决的办法是在日期上也加入表格。

ON
  a.date = b.date
  AND a.Landing_Content_Group = b.Landing_Content_Group