sql - 如何查找 BigQuery 中播放的总会话数?
问题描述
如何找出一个月时间范围内所有用户播放的会话总数。事件user_engagement有一个参数会话计数,每次会话递增。问题是玩 10 个会话的用户的会话计数为 1 到 10。那么我应该如何只添加最大会话计数,即在这种情况下为 10,对于所有用户也是如此。
SELECT
SUM(session_count) AS total_sessions,
COUNT(DISTINCT user_pseudo_id) AS users
FROM
`xyz.analytics_111.events_*`
WHERE
event_name = "user_engagement" AND (_TABLE_SUFFIX BETWEEN "20200201" AND "20200229")
AND platform = "ANDROID"
解决方案
在下面尝试(BigQuery 标准 SQL)
#standardSQL
SELECT
SUM(session_count) AS total_sessions,
COUNT(user_pseudo_id) AS users
FROM (
SELECT user_pseudo_id, MAX(session_count) session_count
FROM `xyz.analytics_111.events_*`
WHERE event_name = "user_engagement"
AND _TABLE_SUFFIX BETWEEN "20200201" AND "20200229"
AND platform = "ANDROID"
GROUP BY user_pseudo_id
)
推荐阅读
- android - 需要帮助编译为 Gamemaker 工作室的 APK 文件
- r - 跨数据列随机添加 NA 值
- php - 如何在functions.php中向自定义主题添加新样式表?
- git - 当我的本地存储库中只有项目的子目录时,是否可以推送 Git?
- c++ - KDevelop 中是否有任何类型的“Codelet 模板”?
- here-api - 这里API:GIS桌面是否有输出格式
- git - 错误:RPC 失败;HTTP 503 curl 22 请求的 URL 返回错误:503
- javascript - 子行和 PHP 源数据问题
- mysql - Mysql案例内连接和选择数据
- ruby - Rufus-Scheduler 只运行一次