用于Google Analytics的BigQuery导出将特定hits.page.pagePath访问的AND和OR结合使用不起作用

时间:2015-02-26 17:21:03

标签: google-analytics google-bigquery

我正在尝试根据Google Analytics中的目标达成情况获取与搜索效果相关的数据。这些目标基于网址,因此,我所做的第一步是获得总完成量,并添加与目标网址一样多的OR有,这没关系。到现在为止还挺好。

问题在于我们必须通过"访问搜索"来对其进行细分。基于url:pagepath like"%search_parameter%"但这一次在另一个声明中作为上一个目标的网址:

SELECT sum(totals.visits)
FROM [XXXXXX.ga_sessions_20150101]
WHERE 

(
 REGEXP_MATCH (hits.page.pagePath,r'/goal1/')
 or REGEXP_MATCH (hits.page.pagePath,r'/goal2/')
 or REGEXP_MATCH (hits.page.pagePath,r'/goal3/')
 or REGEXP_MATCH (hits.page.pagePath,r'/goal4/')
)
and REGEXP_MATCH (hits.page.pagePath,r'/search/')

在Google Analytics界面中,我当然已经完成了搜索人员的目标,因此我不了解构建此查询时可能缺少的内容。

任何帮助?

非常感谢!

1 个答案:

答案 0 :(得分:0)

如果我正确理解"访问搜索"意味着hits.page.pagePath中至少有一个网址与' / search /'匹配,那么我认为以下内容适合您:

    SELECT sum(totals.visits)
    FROM 
    (SELECT 
       totals.visits, 
       hits.page.PagePath,
       SOME(REGEXP_MATCH(hits.page.pagePath,r'/search/')) 
          WITHIN RECORD AS has_search
    FROM [XXXXXX.ga_sessions_20150101]
    WHERE REGEXP_MATCH(hits.page.pagePath,r'[/goal1/|/goal2/|/goal3/|/goal4/]')
   )
   WHERE has_search