【问题标题】:BigQuery Pagepath into columnBigQuery 页面路径到列
【发布时间】:2020-05-11 13:32:45
【问题描述】:

在 bigquery 中,我们有来自谷歌分析的数据。 我们有名为 hits.pagepath 的列。 这就像用户在 1 个会话中访问了哪些页面。 无论如何我可以将这一行翻译成列吗? 就像用户 A 访问了页面 x,y,z 我希望将此页面数据分为两列第一页和下一页。 Client_ID First_Page Next_Page A x y A y z

【问题讨论】:

  • 样本数据和期望的结果会有所帮助。
  • 您希望 x,y,z 页面是动态的还是预定义的?
  • x,y,z 是网站上的页面。我们的网站上有很多页面。
  • 您能分享一下您当前的数据和所需的输出,以便我进行一些测试吗?
  • 按照 Gordon Linoff 的建议,我通过使用 lead() 函数得到了答案。感谢所有试图帮助我的人

标签: sql google-bigquery transform


【解决方案1】:

你可以使用lead():

select t.*,
       lead(hits.pagepath) over (partition by client_id, session order by <visit order>) as next_pagepath
from t;

order by 应该使用指定排序的列,可能是时间戳或类似的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-11
    • 2019-07-23
    • 1970-01-01
    • 2017-09-11
    • 1970-01-01
    相关资源
    最近更新 更多