使用 string_agg() 掌握 PostgreSQL 中的数据串联
在数据库管理中,将多行数据组合成单个字符串是一项常见任务。 MySQL 提供了方便的 GROUP_CONCAT
函数,而 PostgreSQL 提供了同样强大的 string_agg()
函数。 本指南解释了如何使用 string_agg()
来实现相同的结果。
PostgreSQL 解决方案:string_agg()
在 PostgreSQL 9.0 之前,与 GROUP_CONCAT
直接等效的内容不可用。 然而,string_agg()
填补了这一空白,有效地将列中的值与用户指定的分隔符连接起来。
语法和用法
string_agg()
函数遵循以下简单语法:
<code class="language-sql">string_agg(expression, delimiter)</code>
说明性示例
让我们假设一个如原始问题中所述的表格。以下查询演示了 string_agg()
的实际操作:
<code class="language-sql">SELECT id, string_agg(column_name, ',') AS concatenated_values FROM the_table GROUP BY id;</code>
此查询将产生以下输出:
<code>TM67 | 4,9,72 TM99 | 2,3</code>
主要考虑因素
string_agg()
适用于任何表达式,而不仅仅是列。DISTINCT
函数中使用 string_agg()
关键字。本指南提供了一种在 PostgreSQL 中连接数据的清晰简洁的方法,为 MySQL 的 GROUP_CONCAT
提供了一个强大的替代方案。
以上是如何在 PostgreSQL 中连接数据:string_agg() 指南?的详细内容。更多信息请关注PHP中文网其他相关文章!