获得同一用户多次进入网站的时间戳差异

时间:2019-05-06 05:40:43

标签: google-sheets google-bigquery timestamp

我在BigQuery中有数据,其中包含特定列(例如时间戳记和用户ID),一些用户多次访问该网站。

目标是找出多次访问的用户的时差。

即使他们访问了14次,我也需要找出每次连续访问之间的区别。

这是我的数据示例:

enter image description here

1 个答案:

答案 0 :(得分:0)

这应该会有所帮助(假设您想在minute中使用增量)。您随时可以切换到所需的任何时间(hoursecond等)

请注意解析函数LAG的使用,该函数使用在user_id上分区并按时间戳ts排序的数据。另外,请注意,user_id的首次出现与0有所不同,因为这是用户第一次出现:)。希望对您有所帮助。

select user_id, coalesce(timestamp_diff(ts_a, ts_b, minute), 0) as diff_from_prv_visit_minutes from (
  select user_id, ts as ts_a, lag(ts) over (partition by user_id order by ts) as ts_b
  from `mydataset.mytable`
)