介绍 PostgreSQL STRING_AGG() 和 ARRAY_AGG()函数
PostgreSQL ARRAY_AGG()函数是一个聚合函数,它接受一组值并返回一个数组,其中将输入集中的每个值分配给该数组的元素。
1 | 用法: ARRAY_AGG(expression [ORDER BY [sort_expression {ASC | DESC}], [...]) |
ORDER BY子句是自愿性子句。它指定集合中要处理的行的顺序,从而确定结果数组中元素的顺序。它通常与GROUP BY子句一起使用。现在让我们看一些例子。范例1:我们将使用film
,film_actor
和actor
中的表格dvdrental 样本数据库进行示范。在此示例中,我们将使用ARRAY_AVG()函数来查询每部电影的电影标题列表和演员列表,如下所示:
1 2 3 4 5 6 7 8 9 10 11 | SELECT title, ARRAY_AGG (first_name || ' ' || last_name) actors FROM film INNER JOIN film_actor USING (film_id) INNER JOIN actor USING (actor_id) GROUP BY title ORDER BY title; |
范例2:
在这里,我们将使用ARRAY_AGG()函数来返回电影列表和每部电影的演员列表,并使用以下命令按演员的名字排序:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | SELECT title, ARRAY_AGG ( first_name || ' ' || last_name ORDER BY first_name ) actors FROM film INNER JOIN film_actor USING (film_id) INNER JOIN actor USING (actor_id) GROUP BY title ORDER BY title; |
输出:
转载:https://vimsky.com/examples/usage/postgresql-array_agg-function.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)