首先创建group_concat聚集函数:

CREATE AGGREGATE group_concat(anyelement)
(
sfunc = array_append, -- 每行的操作函数,将本行append到数组里
stype = anyarray, -- 聚集后返回数组类型
initcond = '{}' -- 初始化空数组
);

接着上一个SQL样例:

在订单明细表按poseason分组,把ticket_codeorder_id去除重复并且拼接起来

--wp_order_detail
SELECT
po,
season,
array_to_string( group_concat ( DISTINCT ticket_code ), ',' ) AS ticket_codes,
array_to_string( group_concat ( DISTINCT order_id ), ',' ) AS order_ids
FROM
wp_order_detail
WHERE
exists (select 1 from wp_order orders where orders.id = order_id and type = 'Po')
GROUP BY
po,
season;

最后查询结果截图:

PostgreSql之在group by查询下拼接列字符串的更多相关文章

  1. MSSQL如何将查询结果拼接成字符串

    在博问上看到一个提问“MSSQL如何将查询结果拼接成字符串” ,想了一下应该怎么实现呢,在c#等语言下好实现,但在sql里实现.还真没做过. 目标:想要在SQL中将查询的结果拼接为 '1','2',' ...

  2. 装饰者模式的学习(c#) EF SaveChanges() 报错(转载) C# 四舍五入 保留两位小数(转载) DataGridView样式生成器使用说明 MSSQL如何将查询结果拼接成字符串 快递查询 C# 通过smtp直接发送邮件 C# 带参访问接口,WebClient方式 C# 发送手机短信 文件 日志 写入 与读取

    装饰者模式的学习(c#) 案例转自https://www.cnblogs.com/stonefeng/p/5679638.html //主体基类 using System;using System.C ...

  3. SQL查询结果拼接成字符串

    sqlserver中将查询结果拼接成字符串   #for xml path(param)--将查询结果以xml格式输出 1 select id,name from table1 for xml pat ...

  4. sqlserver中将查询结果拼接成字符串

    #for xml path(param)--将查询结果以xml格式输出 select id,name from table1 for xml path --id和name为table1的真实字段 - ...

  5. mysql group by 查询非聚集列

    本文为博主原创,转载请注明出处: mysql使用group by可以使用一些聚合函数,可以计算最大值(max(column)),最小值(min(column)),总和(sum(column)),平均数 ...

  6. sql拼接列字符串

    1.使用函数(sql2000以上) )) ) AS BEGIN ) select @v = isnull(@v + ',','')+code FROM dict WHERE type=@filter ...

  7. 跟我一起读postgresql源码(十)——Executor(查询执行模块之——Scan节点(下))

    接前文跟我一起读postgresql源码(九)--Executor(查询执行模块之--Scan节点(上)) ,本篇把剩下的七个Scan节点结束掉. T_SubqueryScanState, T_Fun ...

  8. Citus 分布式 PostgreSQL 集群 - SQL Reference(查询分布式表 SQL)

    如前几节所述,Citus 是一个扩展,它扩展了最新的 PostgreSQL 以进行分布式执行.这意味着您可以在 Citus 协调器上使用标准 PostgreSQL SELECT 查询进行查询. Cit ...

  9. Citus 分布式 PostgreSQL 集群 - SQL Reference(查询处理)

    一个 Citus 集群由一个 coordinator 实例和多个 worker 实例组成. 数据在 worker 上进行分片和复制,而 coordinator 存储有关这些分片的元数据.向集群发出的所 ...

随机推荐

  1. I Think I Need a Houseboat POJ - 1005

    I Think I Need a Houseboat POJ - 1005 解题思路:水题 #include <iostream> #include <cstdio> #inc ...

  2. jsp页面第一句话报这个错Syntax error, insert "}" to complete

    前段时间做了个项目jsp页面出现了Syntax error, insert "}" to complete错误,是说少了个“}”花括号,错误是在第一行,删了第一行还是会有,错误也不 ...

  3. Float.intBitsToFloat

    Float.intBitsToFloat(0b) Float.intBitsToFloat(0) Float.intBitsToFloat(0x) ========================== ...

  4. WIN10远程计算机不支持所需的FIPS安全级别解决

    win10系统的电脑在远程xp系统或者其他系统的电脑时,提示错误,远程计算机可能不支持所需的FIPS安全级别,如果出现一以下2种错误,可以解决!   1 第一步:打开win10下的,控制面板 2 第二 ...

  5. MVC 向页面传值方式总结(1)

    ViewData传值. HomeController.cs Co de: public ActionResult Index() {       ViewData["Title"  ...

  6. Spark开发wordcount程序

    1.java版本(spark-2.1.0) package chavin.king; import org.apache.spark.api.java.JavaSparkContext; import ...

  7. 【C++】二叉树的构建、前序遍历、中序遍历

    写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...

  8. Win64/Linux 上PyMouse安装

    目录 windows64安装Pymouse Linux安装 PyMouse ubuntu PyMouse用法 windows64安装Pymouse 只安装PyMouse,会提示缺少相应的组键. 找到安 ...

  9. spark-sql分组去重总数统计uv

    SparkConf sparkConf = new SparkConf(); sparkConf .setAppName("Internal_Func") .setMaster(& ...

  10. Spring boot +mybatis 连接mysql数据库,获取JDBC失败,服务器时区价值”Oйu±e×¼e±¼的识别或代表多个时区

    报出的错误 Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connec ...