Array_Agg的替代品:PostgreSQL

Lil*_*llo 0 arrays postgresql aggregate-functions

是否有PostgreSQL Array_Agg函数的替代方法,因此它不会返回格式为{x,y,z,}的值.我可以让它返回:x,y,z?

Erw*_*ter 7

使用string_agg(val, ',')了点.它返回一个字符串,其中包含您选择的分隔符.(你需要PostgreSQL 9.0或更高版本.

array_agg(val)返回一个数组 - 没有什么大惊喜.花括号只是数组文本表示的标准符号.

在旧版本中,您可以替换array_to_string(array_agg(val), ',').

或者:trim(array_agg(val)::text, '{}'- 如果值不以花括号开头或结尾.