string_agg()
是一个系统函数,用于将非 NULL
值连接成字符串,可以选择使用分隔符。
string_agg()
添加在 PostgreSQL 9.0 中。
用法
string_agg (value
text
,delimiter
text
) →text
string_agg (value
bytea
,delimiter
bytea
) →bytea
string_agg()
是 - 顾名思义 - 一个聚合函数,这意味着输入通常将指定为一个或多个列名。
如果不需要分隔符,请将空字符串 (''
) 作为第二个参数传递。
要将任意数量的文本值连接成单个字符串,请参见 concat()
和 concat_ws()
。
更改历史记录
- PostgreSQL 16
- 添加了并行聚合支持(提交 16fd03e9)
- PostgreSQL 9.2
- PostgreSQL 9.0
- 添加(提交 9ea9918e)
示例
string_agg()
的基本、人为用法示例
postgres=# SELECT string_agg(x || '/' || y, ', ') FROM (values ('foo', 'bar'), ('bar', 'baz') ) _(x, y); string_agg ------------------ foo/bar, bar/baz (1 row)
参考文献
- PostgreSQL 文档: 通用聚合函数
有用链接
- Postgres string_agg 函数:快速指南 - 由 Timescale 提供的教程