BIGQUERY 中的 COUNT() 和 GROUP BY
Posted
技术标签:
【中文标题】BIGQUERY 中的 COUNT() 和 GROUP BY【英文标题】:COUNT() AND GROUP BY in BIGQUERY 【发布时间】:2021-09-30 12:52:31 【问题描述】:我尝试在 BigQuery 中使用 UNNEST,但输出如下所示
------------------------------------------
|Row | Name | user_id |
------------------------------------------
| 1 | STAY | 1 |
- -------------------
| |LOVE YOURSELF | |
- -------------------
| | GREEN BOOK | |
- -------------------
| |CRAZY IN LOVE | |
------------------------------------------
我的查询是:
select user_id,
array(select json_extract_scalar(x, '$.Name') from
unnest(json_extract_array(json_col, '$.info.music') x) NAME
from data
我希望表格如下,因为我想计算听每首歌曲的用户数量。有没有人有什么建议?我真的可以使用上表来计算吗?
------------------------------------------
|Row | Name | user_id |
------------------------------------------
| 1 | STAY | 1 |
------------------------------------------
| 2 |LOVE YOURSELF | 1 |
------------------------------------------
| 3 | GREEN BOOK | 1 |
------------------------------------------
| 4 |CRAZY IN LOVE | 1 |
------------------------------------------
【问题讨论】:
向我们展示您的查询。 select user_id, array(select json_extract_scalar(x, '$.Name') from unnest(json_extract_array(json_col, '$.info.music') x) NAME from data 【参考方案1】:考虑下面
select name, user_id from (
select user_id,
array(select json_extract_scalar(x, '$.Name') from
unnest(json_extract_array(json_col, '$.info.music')) x) NAME
from data
) t, t.name name
有输出
【讨论】:
以上是关于BIGQUERY 中的 COUNT() 和 GROUP BY的主要内容,如果未能解决你的问题,请参考以下文章
如何将平面/关系表转换为 BigQuery 中的键/值对表?
Google Analytics 与 BigQuery 中的会话 - 差异