代码之家  ›  专栏  ›  技术社区  ›  voyager

使用Google Analytics BigQuery导出计算应用程序屏幕视图

  •  2
  • voyager  · 技术社区  · 8 年前

    我正在尝试使用Google Analytics BigQuery数据导出计算特定屏幕的应用程序屏幕视图数。我的方法是用屏幕视图计算点击数 hits.type . 例如,要计算我们应用程序web版本上的页面浏览量,我将使用 hits.type = 'PAGE' . 但我不知道如何在应用程序上执行此操作,因为没有“屏幕视图” 击打。类型 价值

    以下是 击打。类型 来自Google( https://support.google.com/analytics/answer/3437719?hl=en ):

    命中的类型。“页面”、“交易”、“项目”、“事件”之一, “SOCIAL”、“APPVIEW”、“EXCEPTION”。

    有没有其他我没有想到的方法?

    我试过使用 totals.screenviews 公制:

    SELECT
      hits.appInfo.screenName,
      SUM(totals.screenviews) AS screenViews
    FROM (TABLE_DATE_RANGE([tableid.ga_sessions_], TIMESTAMP('2018-01-12'), TIMESTAMP('2018-01-12') ))
    GROUP BY
      hits.appInfo.screenName
    

    但这返回的数字太高了。

    2 回复  |  直到 8 年前
        1
  •  2
  •   Willian Fuks    8 年前

    旧式SQL自动取消对数据的检测,这解释了 SUM(totals.screenviews) 最终会高得多(基本上这个字段会被复制)。

    我建议在 Standard SQL ,它更容易、更快。看看这是否适合您:

    #standardSQL
    SELECT
      name,
      SUM(views) views
    FROM(
      SELECT 
        ARRAY(SELECT AS STRUCT appInfo.screenName name, COUNT(1) views FROM UNNEST(hits) WHERE type = 'APPVIEW' GROUP BY 1) data
      FROM `projectId.datasetId.ga_sessions_*`
      WHERE TRUE
        AND EXISTS(SELECT 1 FROM UNNEST(hits) WHERE type = 'APPVIEW')
        AND _TABLE_SUFFIX BETWEEN('20180112') AND ('20180112')
    ), UNNEST(data)
    GROUP BY 1
    ORDER BY 2 DESC
    
        2
  •  1
  •   Daniela Priscila Nunes Mendes    8 年前

    这首歌很成功。类型为–APPVIEW–APPVIEW,因为它不统计事件。

    #standardSQL SELECT hit.appInfo.screenName name, count(hit.appInfo.screenName) view FROM project_id.dataset_id.ga_sessions_*, UNNEST(hits) hit WHERE type = 'APPVIEW' GROUP BY name)