Vertica中的group_concat函数

发布时间 2023-04-03 12:24:10作者: 卡卡西村长

MySQL中一个很实用的函数:group_concat,在vertica中,有一个功能相同的函数:LISTAGG。

Vertica官方参考文档

用法:

select
  client_id,
  LISTAGG(prod_code)
from bdware.test1
group by client_id

默认最大返回长度是1024,如果超出1024,默认策略是报错,可以手动调整为截取模式。如下:

select
  client_id,
  LISTAGG(prod_code USING PARAMETERS max_length=1024, on_overflow='TRUNCATE')
from bdware.test1
group by client_id

 

在Github上还有很多Vertica扩展函数,是用C++实现的,可以自己手工编译注册到Vertica中。地址如下:

https://github.com/vertica/Vertica-Extension-Packages

至于怎么编译注册,参照别人的文章:

https://blog.51cto.com/u_11612079/2050260