首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用GROUP_CONCAT和GROUP EACH BY

使用GROUP_CONCAT和GROUP EACH BY
EN

Stack Overflow用户
提问于 2013-06-09 20:22:00
回答 1查看 1.7K关注 0票数 2

在使用group each by对记录进行分组时,我希望使用group_concat()聚合函数来连接字符串。因为group each by需要一个可并行化的查询,所以我不能使用order by。我是否可以假设表中记录在每个组中的顺序都将保持不变?如果没有,有什么解决方案吗?

EN

回答 1

Stack Overflow用户

发布于 2013-06-10 23:40:47

您可以使用窗口函数来实现这一点。例如:

代码语言:javascript
复制
SELECT word, LAST(corpora) as corpora, LENGTH(LAST(corpora)) as corplen 
FROM (
SELECT word, 
GROUP_CONCAT(corpus) OVER (PARTITION BY word ORDER BY corpus_date) as corpora
FROM [publicdata:samples.shakespeare]
)
GROUP BY word
ORDER BY corplen desc

它将包含特定单词的所有莎士比亚戏剧的名称连接在一起,并按照它们的编写日期进行排序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17009561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档