PostgreSQL 将多行合并转为列


 

 

 

需求将下列表格相同id的name拼接起来输出成一列

id Name
1 peter
1 lily
2 john

 

 

转化后效果:

id Name
1 peter;lily
2 john;

 实现方式使用 array_to_string 和 array_agg 函数,具体语句如下:

string_agg(expression, delimiter) 把表达式变成一个数组

string_agg(expression, delimiter)  直接把一个表达式变成字符串

 

select  id, array_to_string( array_agg(Name),  ';' ) from table group by id

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM