string_agg(ex1, d1):直接把一个表达式变成字符串

在这里插入图片描述
如果需要对ord进行分组,但是num值要在一个格子里:

SELECT ord,string_agg(num||'','-' ORDER BY num) from cx.over_test
group by ord;

在这里插入图片描述

array_agg(e1):把表达式变成一个数组 一般配合 array_to_string() 函数使用;

select ord, array_agg(num ORDER BY num) from cx.over_test 
group by ord;

在这里插入图片描述
去重。可以只获取排序号:

select array_agg(distinct ord ORDER BY ord) from cx.over_test;

在这里插入图片描述
对于数组的操作,跟java差不多,后面跟序号就可以取值,从1开始:

select ord,(array_agg(num ORDER BY num))[1] from cx.over_test
group by ord;

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐