如何解决SQL将B列中与A列中的所有值具有相同值的B列中的所有值连接在一起
我正在运行Postgresql 12.4。我有一个相对较大的表,如下所示,其中列1和2均为character varying
类型:
|---------------------|------------------|
| Column 1 | Column 2 |
|---------------------|------------------|
| foo | X |
|---------------------|------------------|
| foo | Y |
|---------------------|------------------|
| foo | Z |
|---------------------|------------------|
| bar | A |
|---------------------|------------------|
| bar | B |
|---------------------|------------------|
| bar | C |
|---------------------|------------------|
我想创建如下内容:
|---------------------|------------------|
| Column 1 | Column 2 |
|---------------------|------------------|
| foo | X,Y,Z |
|---------------------|------------------|
| bar | A,B,C |
|---------------------|------------------|
有一种简单的方法吗?
解决方法
您可以使用string_agg
:
select column1,string_agg(column2,',')
from table_name
group by column1
您可以找到更多信息here。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。