Google analytics 使用BigQuery的站点搜索分析

Google analytics 使用BigQuery的站点搜索分析,google-analytics,google-bigquery,Google Analytics,Google Bigquery,我是BigQuery导出模式的新手,我正在尝试分析电子商务网站中的站点搜索模式 我想得到每个会话的步骤,一旦有人使用该网站的搜索栏。我想检索使用的关键字和URL(a.k.a=searchPath、previousSearchPath和nextSearchPath) 鉴于此,我想检查: 当用户考虑在我们的网站中搜索(n次命中/交互) 搜索前他/她访问的最后一个url 搜索后他访问的结果页面 下列行动 到目前为止,我得到了这个问题。但是,上一页路径/step/nextStep与某些逻辑不匹配。我

我是BigQuery导出模式的新手,我正在尝试分析电子商务网站中的站点搜索模式

我想得到每个会话的步骤,一旦有人使用该网站的搜索栏。我想检索使用的关键字和URL(a.k.a=searchPath、previousSearchPath和nextSearchPath)

鉴于此,我想检查:

    当用户考虑在我们的网站中搜索(n次命中/交互)
  • 搜索前他/她访问的最后一个url
  • 搜索后他访问的结果页面
  • 下列行动
到目前为止,我得到了这个问题。但是,上一页路径/step/nextStep与某些逻辑不匹配。我得到这样的东西:

  • 产品列表页/
  • 产品列表第页/2
  • 产品列表第页/3

我终于设法添加了一个用于站点搜索跟踪的事件。因此,我现在有了触发该事件的会话,加上使用hit.page.searchKeywords的结果以及计算所需度量所需的所有其他内容

WITH event AS (
  SELECT
      CONCAT(fullVisitorId, visitStartTime) as sessionId,
      CASE WHEN hit.eventInfo.eventAction= 'sitesearch' THEN hit.page.pagePath ELSE NULL END AS pagepath_search,
    FROM `project.dataset.ga_sessions_*` AS ga,  UNNEST(hits) AS hit
    WHERE _TABLE_SUFFIX = 'date'
                ),
keyword AS (
   SELECT 
    CONCAT(fullVisitorId, visitStartTime) as sessionId,
    hit.page.searchKeyword as keyword,
    hit.page.pagePath AS pagepath_result,
  FROM `project.dataset.ga_sessions_*` AS ga,  UNNEST(hits) AS hit
  WHERE _TABLE_SUFFIX = 'date'
            )

SELECT 
  keyword.keyword, 
  evento.pagepath_search, 
  COUNT(DISTINCT keywords.sessionId) AS total_sessions
FROM
  event INNER JOIN keyword ON event.sessionId = keyword.sessionId

我一直在学习这方面的知识,所以,如果你知道什么可以更好的,打我吧

您能否显示要在数据中执行哪些转换?我的意思是,初始数据是什么,您希望得到什么样的输出。您好,需要的转换是,通过web使用sessionId行为,我希望仅当他们使用站点搜索栏时,才能获得每个页面的.Path。比如说,有人登陆电子商务主页,然后我点击“销售”,然后我点击“西装”,但是,因为我在寻找“花式衬衫”,所以(但)没有得到任何我喜欢的结果。我使用搜索栏。因此,通过上面的查询,我想获得:-page.Path我第一次使用的搜索站点栏-page.Path的结果-page.Path的以下步骤-使用的关键字
WITH event AS (
  SELECT
      CONCAT(fullVisitorId, visitStartTime) as sessionId,
      CASE WHEN hit.eventInfo.eventAction= 'sitesearch' THEN hit.page.pagePath ELSE NULL END AS pagepath_search,
    FROM `project.dataset.ga_sessions_*` AS ga,  UNNEST(hits) AS hit
    WHERE _TABLE_SUFFIX = 'date'
                ),
keyword AS (
   SELECT 
    CONCAT(fullVisitorId, visitStartTime) as sessionId,
    hit.page.searchKeyword as keyword,
    hit.page.pagePath AS pagepath_result,
  FROM `project.dataset.ga_sessions_*` AS ga,  UNNEST(hits) AS hit
  WHERE _TABLE_SUFFIX = 'date'
            )

SELECT 
  keyword.keyword, 
  evento.pagepath_search, 
  COUNT(DISTINCT keywords.sessionId) AS total_sessions
FROM
  event INNER JOIN keyword ON event.sessionId = keyword.sessionId