我正在尝试计算特定屏幕(主屏)的弹跳率和退出率,但它在android的情况下跟踪闪屏。我想删除从闪屏生成的会话。实际上,这破坏了我用于计算弹跳率的逻辑,因为在弹跳的情况下,我采用totals.screenviews =1。但是,如果我们包含splash,那么这个逻辑就会过时。我用来计算弹跳率的查询是
SELECT
*
FROM (
SELECT
SUM(screenviews) Totals,
date date,
Platform,
FROM (
SELECT
COUNT(hits.type) AS screenviews,
DATE(date) AS date,
device.operatingSystem Platform,
FROM
TABLE_DATE_RANGE([118356700.ga_sessions_],TIMESTAMP('2017-01-01'), TIMESTAMP (CURRENT_DATE()))
WHERE
hits.type IN ("APPVIEW")
AND hits.appInfo.ScreenName IN ( "Home Storefront Screen")
AND device.operatingSystem <> "BlackBerry"
GROUP BY
2,
3 )
GROUP BY
2,
3 ),
(
SELECT
SUM(screenviews) Bounced,
date1 date,
Platform,
FROM (
SELECT
COUNT(hits.type) AS screenviews,
DATE(date) AS date1,
device.operatingSystem Platform,
FROM
TABLE_DATE_RANGE([118356700.ga_sessions_],TIMESTAMP('2017-01-01'), TIMESTAMP (CURRENT_DATE()))
WHERE
hits.type IN ("APPVIEW")
AND hits.appInfo.LAndingScreenName = "Home Storefront Screen"
AND hits.appInfo.LAndingScreenName = hits.appInfo.ExitScreenName
AND totals.screenviews = 1
AND device.operatingSystem <> "BlackBerry"
AND hits.isEntrance = TRUE
GROUP BY
2,
3 )
GROUP BY
2,
3)
发布于 2017-11-02 17:24:54
不确定,我没弄错,但如果我没弄错的话,根据你的定义,你的退回会话是由2个APPVIEWS
in hits.type
组成的吗?您可以在WHERE
语句后尝试使用类似OMIT RECORD IF NOT SUM(hits.type='APPVIEW')<=2
的语句
这将对会话内的true (1)/false (0)求和,如果记录/会话与您的退回定义不匹配,则忽略整个记录/会话。
请参阅https://cloud.google.com/bigquery/docs/reference/legacy-sql#omit
https://stackoverflow.com/questions/46428453
复制相似问题