所以我有这样的5行
userid, col
--------------
1, a
1, b
2, c
2, d
3, e
Run Code Online (Sandbox Code Playgroud)
我该怎么做查询,所以它看起来像这样
userid, combined
1, a b
2, c d
3, e
Run Code Online (Sandbox Code Playgroud)
小智 42
在蜂巢中你可以使用
SELECT userid, collect_set(combined) FROM tabel GROUP BY user_id;
Run Code Online (Sandbox Code Playgroud)
collect_set删除重复的.如果你需要保留它们,你可以查看这篇文章:
OMG*_*ies 14
SELECT yt.userid,
GROUP_CONCAT(yt.col SEPARATOR ' ') AS combined
FROM YOUR_TABLE yt
GROUP BY yt.userid
Run Code Online (Sandbox Code Playgroud)
默认分隔符是逗号(","),因此您需要指定单个空格的SEPARATOR以获得所需的输出.
如果要确保GROUP_CONCAT中值的顺序,请使用:
SELECT yt.userid,
GROUP_CONCAT(yt.col ORDER BY yt.col SEPARATOR ' ') AS combined
FROM YOUR_TABLE yt
GROUP BY yt.userid
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
25961 次 |
最近记录: |