我有点惊讶,来自用户的连续会话怎么会有visitNumber == 1(它发生在多个用户身上)。访问编号(用户的会话编号)是否随每个连续会话递增?
请参阅附表截图请
====
SELECT fullvisitorid, visitid, date, visitNumber, hitNumber, type, page.pagePath, isInteraction
FROM `122623284.ga_sessions_2017*` ga_sessions, unnest(hits) as ht
WHERE _TABLE_SUFFIX between '0101' and '0731'
AND fullvisitorid in ('3635735417215222540', '4036640811518552822', '800892955541145796')
ORDER BY fullvisitorid, visitid, hitnumber
先谢谢,如果有人知道在什么情况下会发生这种情况呢?
喝彩!
更新(在@WillianFuks回复之后)
答案 0 :(得分:2)
这里的观察是连续访问之间明显的日期差异:
Analytics会对最后一个会话进行回顾以增加visitNumber计数,但是它回溯的天数有限制,称为回顾窗口。我不记得确切的分析,但各种Google产品的回顾窗口通常在90天到180天之间。
由于它无法在回顾窗口中找到上次访问,因此它会再次将visitNumber重置为1。
更新:默认情况下,Google Analytics(分析)为6个月。
答案 1 :(得分:0)
正如Elliott在评论中所说,问题很可能是由于UNNEST
应用于点击字段时发生的重复。
您可以通过运行此查询来确认:
SELECT
fullvisitorid fv,
visitid,
date,
visitNumber,
ARRAY(SELECT AS STRUCT hitNumber, type, page.pagePath AS pagePath, isInteraction FROM UNNEST(hits)) data
FROM `122623284.ga_sessions_2017*`
WHERE _TABLE_SUFFIX between '0101' and '0731'
AND fullvisitorid in ('3635735417215222540', '4036640811518552822', '800892955541145796')
LIMIT 1000
这将带来 hits 中的字段,而不会使用外部字段进行交叉产品(不需要的操作)。