今天一个客户问怎样把表中相同键值对应的文本按照一定顺序拼接起来。如果使用SQL实现将非常麻烦,并且效率低下。GP4.1以后提供了一个函数array_agg可以方便快捷,高效的实现该功能

比如原始查询是

test1=# select n_regionkey,n_name from nation;
 n_regionkey |          n_name
-------------+---------------------------
           3 | UNITED KINGDOM
           1 | BRAZIL
           2 | VIETNAM
           4 | IRAN
           4 | SAUDI ARABIA
           4 | JORDAN
           0 | ALGERIA
           4 | EGYPT
           4 | IRAQ
           0 | ETHIOPIA
           1 | ARGENTINA
           3 | ROMANIA
           2 | CHINA
           2 | JAPAN
           0 | MOROCCO
           2 | INDONESIA
           1 | UNITED STATES
           0 | MOZAMBIQUE
           3 | RUSSIA
           3 | GERMANY
           1 | CANADA
           1 | PERU
           0 | KENYA
           2 | INDIA
           3 | FRANCE

我们要把相同地区的代码的国家,按照字母顺序拼接在一起,放在一行当中,并且显示地区代码。通过arrary_agg可以很方便的实现该功能

test1=# select n_regionkey,array_agg(trim(n_name) order by n_name) from nation group by n_regionkey;
 n_regionkey |                    array_agg
-------------+--------------------------------------------------
           2 | {CHINA,INDIA,INDONESIA,JAPAN,VIETNAM}
           4 | {EGYPT,IRAN,IRAQ,JORDAN,"SAUDI ARABIA"}
           1 | {ARGENTINA,BRAZIL,CANADA,PERU,"UNITED STATES"}
           3 | {FRANCE,GERMANY,ROMANIA,RUSSIA,"UNITED KINGDOM"}
           0 | {ALGERIA,ETHIOPIA,KENYA,MOROCCO,MOZAMBIQUE}

嵌套json的更多相关文章

  1. ASP.NET提取多层嵌套json数据的方法

    本文实例讲述了ASP.NET利用第三方类库Newtonsoft.Json提取多层嵌套json数据的方法,具体例子如下. 假设需要提取的json字符串如下: {"name":&quo ...

  2. 详解ASP.NET提取多层嵌套json数据的方法

    本篇文章主要介绍了ASP.NET提取多层嵌套json数据的方法,利用第三方类库Newtonsoft.Json提取多层嵌套json数据的方法,有兴趣的可以了解一下. 本文实例讲述了ASP.NET利用第三 ...

  3. 【Java_Spring】java解析多层嵌套json字符串

    java解析多层嵌套json字符串    

  4. 复杂json解析(json里面嵌套json)

    调用第三方接口,返回一堆json,我只想取得里面的某一个属性,但是返回的比较复杂,无法直接拿到属性,格式类似于这样: {"video":{"id":" ...

  5. 复习解析嵌套json

    在网络上找的一些经典的例子复习使用 一,解析嵌套json字符串,一个json字符串中嵌套另一个json字符串 { "msg": { "resCode": &qu ...

  6. 利用FastJson,拼接复杂嵌套json数据&&直接从json字符串中(不依赖实体类)解析出键值对

    1.拼接复杂嵌套json FastJson工具包中有两主要的类: JSONObject和JSONArray ,前者表示json对象,后者表示json数组.他们两者都能添加Object类型的对象,但是J ...

  7. Logstash下字段以及嵌套Json字段类型转换

    前言 从filebeat传输到Logstash的数据,某个字段需要由string类型装换成float类型.但是不管怎么改logstash的配置文件都不生效,其实官方文档都有,但是具体细节方面的东西就得 ...

  8. 【golang】json数据解析 - 嵌套json解析

    @ 目录 1. 通过结构体映射解析 2. 嵌套json解析-map 1. 通过结构体映射解析 原数据结构 解析 // 结构体 type contractJson struct { Data []tra ...

  9. c#多层嵌套Json

    Newtonsoft.Json.Net20.dll 下载请访问http://files.cnblogs.com/hualei/Newtonsoft.Json.Net20.rar 在.net 2.0中提 ...

  10. 提取多层嵌套Json数据

    在.net 2.0中提取这样的json {"name":"lily","age":23,"addr":{"ci ...

随机推荐

  1. Linux 下搭建jsp服务器(配置jsp开发环境)

    Linux 做为服务器的高效一直时为人所熟知的了,在linux 上搭建各种各样的服务器和开发环境也时学计算机的人常做的.以下时最近在linux配置jsp服务器的全过程,包含一些基本步骤和排错过程: 1 ...

  2. 一个初学者的辛酸路程-socket编程-8

    前言: 你会发现会网络是多么幸福的事情 主要内容: socket 概念: socket本质上就是2台网络互通的电脑之间,架设一个通道,两台电脑通过这个通道来实现数据的互相传递.我们知道网络通信都是基于 ...

  3. Mysql表结构定义及相关语法

    mysql语法及相关命令1.每个sql命令都需要使用分号来完成2.可以将一个命令写成多行3.可以通过\c来取消本行命令4.可以通过\g.exit.ctrl+c或者quit来退出当前客户端5.可以通过使 ...

  4. Ubuntu下安装composer及配置

    1.下载最新composer wget -c https://getcomposer.org/composer.phar 2.可执行权限 chmod u+x composer.phar 3.放置到安装 ...

  5. 面向GC的Java编程(转)

    转自:http://blog.hesey.net/2014/05/gc-oriented-java-programming.html Java程序员在编码过程中通常不需要考虑内存问题,JVM经过高度优 ...

  6. Java线程池主线程等待子线程执行完成

    今天讨论一个入门级的话题, 不然没东西更新对不起空间和域名~~ 工作总往往会遇到异步去执行某段逻辑, 然后先处理其他事情, 处理完后再把那段逻辑的处理结果进行汇总的产景, 这时候就需要使用线程了. 一 ...

  7. CodeForces 702D Road to Post Office

    答案的来源不外乎于3种情况: 纯粹走路,用时记为${t_1}$:纯粹乘车,用时记为${t_2}$:乘车一定距离,然后走路,用时记为${t_3}$. 但是${t_1}$显然不可能成为最优解. 前两个时间 ...

  8. L2-004. 这是二叉搜索树吗?

    L2-004. 这是二叉搜索树吗? 题目链接:https://www.patest.cn/contests/gplt/L2-004 这题我的方法是先递归判定是不是二叉搜索树(镜像),再建树输出. 代码 ...

  9. JavaScript详解

    JavaScript可以说是web开发中必备的一种技术.它具有灵活,简单,高效等特点.这次DRP中大量的用到了js,让自己对js有了更深的了解.看完这个以后还回去看了一下牛腩的js视频.把以前没看的看 ...

  10. [妙味DOM]第一课:DOM基础概念、操作

    知识点总结 childNodes.children子节点列表集合.nodeType节点类型.nodeName.nodeValue.attributes属性列表集合 childNodes和childre ...