pgsql支持group_concat

1。使用pgsql自带函数实现如下

SELECT array_to_string(array_agg(user_name),',') userName FROM t_user

2.新建聚合函数如下

DROP AGGREGATE icpdb.group_concat(anyelement);
CREATE AGGREGATE icpdb.group_concat(anyelement)
(
sfunc = array_append, -- 每行的操作函数,将本行append到数组里
stype = anyarray, -- 聚集后返回数组类型
initcond = '{}' -- 初始化空数组
);

sql使用如下

SELECT array_to_string(group_concat(user_name),',') userName FROM t_user

如果直接用group_concat返回得是个数组,所以依旧还是要用自带函数转换

猜你喜欢

转载自blog.csdn.net/weixin_41796956/article/details/127004336