sql中拼接操作

SQL中的拼接操作

常用listagg聚合函数

sql 复制代码
LISTAGG(column, [separator]) WITHIN GROUP (ORDER BY order_by_clause)

column:你想要连接起来的列。

separator\]:可选参数,用于指定列值之间的分隔符。如果不指定,则默认没有分隔符。 WITHIN GROUP (ORDER BY order_by_clause):指定连接时列值的排序方式。这是必须的,因为 LISTAGG 需要知道如何对值进行排序以生成最终的字符串。 ### 用法 ```sql SELECT department_id, LISTAGG(employee_name, ', ') WITHIN GROUP (ORDER BY employee_name) ||',' AS employees FROM employees GROUP BY department_id; ``` LISTAGG(employee_name, ', ') :这里表示拼接wy字段,使用','隔开, \|\|',' : 结尾这个表示字段最后也加上','逗号 group (order by l_ztbh)按照 l_ztbh字段进行排序 ## 也可用 XMLAGG代替上述操作 ````sql SELECT department_id, XMLELEMENT(NAME "employees", XMLAGG(XMLELEMENT(NAME "employee", employee_name) ORDER BY employee_name)).EXTRACT('//text()') AS employees_xml FROM employees GROUP BY department_id;``` ````

相关推荐
有一个好名字3 小时前
MyBatis-Plus 三种数据库操作方式详解 + 常用方法大全
数据库·mybatis
-Xie-3 小时前
Redis(八)——多线程与单线程
java·数据库·redis
G探险者3 小时前
为什么 VARCHAR(1000) 存不了 1000 个汉字? —— 详解主流数据库“字段长度”的底层差异
数据库·后端·mysql
Albert Tan4 小时前
Oracle EBS R12.2.14 清理FND_LOBS并释放磁盘空间
数据库·oracle
L.EscaRC4 小时前
图数据库Neo4j原理与运用
数据库·oracle·neo4j
知己80804 小时前
docker搭建图数据库neo4j
数据库·docker·neo4j
TDengine (老段)4 小时前
什么是 TDengine IDMP?
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
谅望者5 小时前
数据分析笔记08:Python编程基础-数据类型与变量
数据库·笔记·python·数据分析·概率论
Boilermaker19925 小时前
【MySQL】备份与恢复
数据库·mysql
q***7485 小时前
数据库高安全—openGauss安全整体架构&安全认证
数据库·安全·架构