Big Query - Google Analytics - 首次访问和购买之间的时间差异

2024-02-05

试图获取一个列表:

guestid,首次访问时间,发生交易的点击时间。

我所写的只是获取具有交易收入的行。我还尝试通过 Date(visitStartTime) 将unix日期的visitStartTime转换为常规日期,但由于输出的日期,这在组中失败了。

任何方向都超级有帮助。

SELECT 
  fullvisitorID, 
  visitNumber,
  visitStartTime,
  hits.transaction.transactionRevenue

FROM 
  [75718103.ga_sessions_20150310],
  [75718103.ga_sessions_20150309],
  [75718103.ga_sessions_20150308],
  [75718103.ga_sessions_20150307],
  [75718103.ga_sessions_20150306],
  [75718103.ga_sessions_20150305],
  [75718103.ga_sessions_20150304],
  [75718103.ga_sessions_20150303],
  [75718103.ga_sessions_20150302],


WHERE totals.transactions >=1

GROUP BY    
  fullvisitorID, visitNumber, visitStartTime, hits.transaction.transactionRevenue;

VisitStartTime 在 Google Analytics 模式中定义为 POSIX 时间,这意味着自纪元以来的秒数。 BigQuery TIMESTAMP 被编码为micro自纪元以来的秒数。因此,为了获得 TIMESTAMP 形式的开始时间,我使用了TIMESTAMP(INTEGERvisitStartTime*1000000))。 hit.time 包含的数量milli自第一次命中以来的秒数,因此要获取交易时间,需要将它们乘以 1000 才能达到微秒粒度,因此TIMESTAMP(INTEGER(visitStartTime*1000000 + hits.time*1000))。由于命中是重复记录,因此不需要 GROUP BY,数据模型已经将所有命中分组在一起。 把它们放在一起:

SELECT
  fullVisitorId,
  timestamp(integer(visitStartTime*1000000)) as start_time, 
  timestamp(integer(visitStartTime*1000000 + hits.time*1000)) as transaction_time
FROM 
 [google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910] 
WHERE hits.transaction.transactionRevenue > 0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Big Query - Google Analytics - 首次访问和购买之间的时间差异 的相关文章

随机推荐