2016-12-13 91 views
1

我想要通过网站上的预订页面查看total.pageviews的人数。这是我的查询。Google Big Query页面查看次数与GA页面查看次数不符

SELECT sum(totals.pageviews) AS Searches,Date 
FROM `table*` 
WHERE exists (
select 1 from unnest(hits) as hits 
where hits.page.pagePath ='booking' 
) 
and date='20161109' 
GROUP BY DATE 

但是我得到了比我从Google Analytics获得的更多结果。 大查询结果:约1M GA:约30万 这是我试图以配合

GA result GA screenshot

回答

0

我找到了解决办法解决这个问题:

SELECT COUNT(totals.pageviews)AS搜索,日期 FROM table,UNNEST(点击)作为命中 WHERE hits.page .pagePath ='/ booking'和hits.type ='PAGE' GROUP BY DATE

希望这个答案可以帮助别人。

0

看起来有点多地进入谷歌分析数据后的GA页,我想你实际上要计入hits中与条件直接匹配的条目,而不是依靠totals.pageViews。问题是totals.pageViews表示在特定会话中访问的不同页面的数量(如果我使用的是正确的术语),其中包括与您的过滤器不匹配的页面。我想你想要这样的东西,而不是:

SELECT 
    COUNT(*) AS Searches, 
    Date 
FROM `table*`, UNNEST(hits) AS hit 
WHERE hit.page.pagePath = 'booking'; 

这直接计数匹配的页面,并希望给予预期的数字。

+0

嗨艾略特,我尝试了新的逻辑,但它仍然给我超过1M记录。我附上了GA屏幕截图的照片。综合浏览量是我想要将我的Big查询数据与 – Rachel

0

试试下面

SELECT 
    date, 
    COUNT(*) AS Searches, 
    SUM(totals.pageviews) as PageViews 
FROM `table*`, UNNEST(hits) AS hit 
WHERE hit.page.pagePath = 'booking' 
AND hit.hitNumber = 1 
GROUP BY date 

搜索 - 开始为切入点网站预订页面的会话数; 浏览量 - 浏览量的那些(上图)会话数

我想对 网站总(totals.pageview)的预订页面。多少次预约页面已被浏览

首先 - total(totals.pageview) - 在确定你真正需要什么,你都假设使用total.pageviews领域是正确的,这似乎并没有帮助不是 - 至少根据您的措辞其余

其次,如果假设你需要的是 - 该网站上的预订页面浏览量计数 - 唯一合理的答案是低于

SELECT 
    date, 
    COUNT(1) AS BookingPageViews 
FROM `table*`, UNNEST(hits) AS hit 
WHERE hit.page.pagePath = 'booking' 
GROUP BY date 

最后,如果你仍然得到不同于你预期的数字吨 - 你需要重新审视你正在寻找的东西。您在GA中看到的数字可能代表与您所代表的指标不同的指标。这是唯一的解释,我会看到

+0

相匹配的衡量标准嗨米哈伊尔,感谢您的回复。但是,我仍然无法使BigQuery数据与浏览量中的GA数据相匹配。你介意解释hits.hitNumber = 1背后的逻辑吗?我知道这是排序的点击数。如果我们设置为1,那么我们只会在该会话中首先被击中。通过这种方式,现在我的数字比GA低。我还附上了如何在GA中获得综合浏览量的屏幕截图。有什么想法吗? – Rachel

+0

在您的问题中,您要求通过预订页面访问的人的综合浏览量。所以你需要看到的不仅仅是页面是路径的一部分,而是作为第一页 - 因此 - hit.hitNumber = 1.希望这可以帮助 –

+0

我很抱歉,我没有说清楚之前。我希望在网站上有预订页面的总数(totals.pageview)。预订页面已被查看多少次。 – Rachel