【发布时间】:2015-08-05 20:07:20
【问题描述】:
我刚刚学习 BigQuery,所以这可能是一个愚蠢的问题,但我们希望在那里获得一些统计数据,其中之一是给定一天的总会话数。
为此,我在 BQ 中查询过:
select sum(sessions) as total_sessions from (
select
fullvisitorid,
count(distinct visitid) as sessions,
from (table_query([40663402], 'timestamp(right(table_id,8)) between timestamp("20150519") and timestamp("20150519")'))
group each by fullvisitorid
)
(我使用table_query,因为稍后我们可能会增加天数)
这导致1,075,137。
但在我们的 Google Analytics(分析)报告中,在“受众概览”部分,同一天的结果:
This report is based on 1,026,641 sessions (100% of sessions).
尽管这一天,总有大约 5% 的差异。所以我想知道,即使查询很简单,我们是否犯了任何错误?
这种差异会发生吗?我通读了 BigQuery 的文档,但在此问题上找不到任何内容。
提前致谢,
【问题讨论】:
-
如果您尝试 EXACT_COUNT_DISTINCT(visitid) 会发生什么?
-
嗨@FelipeHoffa。我也试过这个,但得到了同样的结果。
-
我仍然有这个问题。你找到原因了吗?
-
嗨@tomb,是的,我们确实知道了。我们联系了 Google 的技术支持,他们告诉我们,在 Google Analytics(分析)报告中,我们只有具有一些“事件”交互的会话。另一方面,在 Bigquery 中包含触发或不触发事件的所有会话。为了获得与分析相同的结果,您必须在 where 子句中添加“totals.visits = 1”。我会写一个这个问题的答案来更好地解释一下;)
标签: google-analytics google-bigquery