关于如何在vertica上使用MySQL的group_concat()函数

发布时间:2020-06-15 20:33:20 作者:MShaw_Yang
来源:网络 阅读:19668

今天遇到客户在使用vertica的时候,想使用MySQL的group_concat()函数。

GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成。由于这个函数在vertica中是没有的。所以需要自己开发。幸好有人已经将该第三方的扩展包已经写好了。这里简单叙述一下在vertica中如何使用。

首先去下载能实现group_concat()函数的扩展包,这里是下载地址。下载好后拷贝到vertica的服务器上。

用root用户解压该包。

[root@v001 ] unzip vertica-package.zip

改变这个文件夹的所属者。

[root@v001] chown -R dbadmin:verticadba vertica-package/

切换到dbadmin用户。

[root@v001] su - dbadm

进入到解压好的那个文件夹

[dbadmin@v001 ] cd vertica-package/

在文件下有很多扩展包,我们只需要string-package这个包,因为这个包里包含有group_concat()函数

关于如何在vertica上使用MySQL的group_concat()函数

进入该文件夹

[dbadmin@v003 vertica-package]$ cd strings_package/

通过readme.md知道,需要先编译再安装

如果出现无法编译:则执行如下语句:

[root@v001 ]yum -y groupinstall "Development tools" && yum -y groupinstall "Additional Development"

关于如何在vertica上使用MySQL的group_concat()函数

[dbadmin@v003 strings_package]$ make
[dbadmin@v003 strings_package]$ make install

提示如下信息就算安装成功。

关于如何在vertica上使用MySQL的group_concat()函数

接下来进行测试:

连接数据库:

输入:

dbadmin=> select group_concat(node_name) over () from nodes;

输出结果:

关于如何在vertica上使用MySQL的group_concat()函数

再测试如下语句:

dbadmin=> select schema_name,projection_name,group_concat(node_name) over (partition by schema_name,projection_name) from (select distinct node_name,schema_name,projection_name
 from storage_containers) sc order by schema_name, projection_name;

输出结果:

关于如何在vertica上使用MySQL的group_concat()函数

可以看到它已经实现了MySQL的group_concat()的功能。


推荐阅读:
  1. 如何解决登录OneDrive时报错Error 0x8004d
  2. MySQL8.0——Resource Group(资源组)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

group concat gr

上一篇:Nginx服务优化(四)日志分割

下一篇:大快城市智慧停车管理系统架构体系介绍

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》