bigquery中复制的“后跟”段适用于会话,但不适用于用户?

时间:2018-08-01 13:47:02

标签: google-analytics google-bigquery

我正在尝试复制我在Google Analytics(分析)中拥有的一个基本细分,我想查看所有看到一个页面然后“紧随其后”另一个页面的用户。

因此,我尝试了两种方法(子查询和自我联接),当我查看会话时都可以找到它们,我的GA编号与我的bigquery编号完全匹配。生活很好。

但是,当我对用户使用相同的方法时,我会减少一些,通常在9000个左右中,大约有10-50个用户。有人为什么吗?

干杯。

我的GA细分非常基础; 页面包含X 其次是 页面包含Y

我的bigquery代码如下:

#standardsql
with
subq1 as 
(
SELECT distinct 
t.fullVisitorId as UserID,
hits.page.pagePath page, 
visitStartTime+hits.time as EventTime
FROM `ga-project` as t, 
UNNEST(hits) as hits
WHERE    _TABLE_SUFFIX BETWEEN  
    FORMAT_DATE("%y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 4 DAY)) AND
    FORMAT_DATE("%y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)) AND 
    hits.page.pagepath like '%Y%'
),
subq2 as 
(
SELECT distinct 
t.fullVisitorId as UserID,
hits.page.pagePath page, 
visitStartTime+hits.time as EventTime
FROM `ga-project` as t, 
UNNEST(hits) as hits
WHERE    _TABLE_SUFFIX BETWEEN  
    FORMAT_DATE("%y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 4 DAY)) AND
    FORMAT_DATE("%y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)) AND 
    hits.page.pagepath like '%X%'
)
select count(distinct a.userid) Page1toPage2 from subq1 a
join subq2 b on a.userid=b.userid and a.eventtime < b.eventtime

1 个答案:

答案 0 :(得分:0)

BigQuery中的子查询就像视图而不是表,这就是为什么您有时会得到不同结果的原因。我建议materialize the table。为了避免存储费,您可以设置一个时间到桌子上。