Bigquery查询以获取用户保留

时间:2018-07-27 10:39:38

标签: google-bigquery retention

我正在使用以下查询来获取我的应用程序的保留时间,但在我看来,返回的数据不正确。

SELECT * FROM (
SELECT FORMAT_DATE('%Y-%m-%d', DATE(TIMESTAMP_MICROS(user_properties.value.int_value * 1000))) as first_open,
       FORMAT_DATE('%Y-%m-%d', PARSE_DATE('%Y%m%d', event_date)) event_date,
       COUNT(DISTINCT user_pseudo_id)
FROM `analytics_xxxxxxxxxx.events_*`, UNNEST(user_properties) as user_properties
WHERE user_properties.key='first_open_time'  AND _TABLE_SUFFIX in ('20180719', '20180720') 
      AND app_info.id in ('<my app id>')
GROUP BY first_open, event_date
ORDER BY first_open, event_date
) as foo
where first_open = '2018-07-19'

结果: enter image description here

从我的角度来看,此结果意味着7月19日有374个活动用户,但7月20日有407个活动用户的首次开放时间为19。因此,至少有407-374 = 33个用户在7月19日处于活动状态但在BigQuery中未进行记录的人,或者我的查询可能不正确。您有更好的查询来保留吗?

PS:这是从2018年6月25日开始应用的新的bigquery架构

0 个答案:

没有答案