首页 > 数据库 >Oracle、达梦:拼接数组数据为一行

Oracle、达梦:拼接数组数据为一行

时间:2024-07-12 16:11:36浏览次数:7  
标签:LISTAGG join 拼接 value2 value1 Oracle GROUP 达梦

一、普通拼接

1、需求

oracle查询的数据是:

value1
1
2
3
怎么获取:1/2/3

2、实现

  • value1:是要拼接的字段
  • value2:是表中的任意字段-可用于排序的字段,也可以是value1
-- 使用 LISTAGG 函数将多行数据连接成一个字符串,以 '/' 作为连接符
SELECT 
LISTAGG(value1, '/') WITHIN GROUP (ORDER BY value2) AS join
FROM table;

二、进阶——分组后拼接

1、需求

oracle查询的数据是:

value1 value2
1 1
1 2
2 3
2 4
  • 怎么获取
value1 join
1 1-2
2 3-4

2、实现

  • value1:是要拼接的字段
  • value2:是表中的任意字段-可用于排序的字段,也可以是value1
-- 使用 LISTAGG 函数将多行数据连接成一个字符串,以 '-' 作为连接符
SELECT 
value1,
LISTAGG(value1, '-') WITHIN GROUP (ORDER BY value2) AS join
FROM table
GROUP BY value1;

标签:LISTAGG,join,拼接,value2,value1,Oracle,GROUP,达梦
From: https://www.cnblogs.com/kakarotto-chen/p/18273266

相关文章

  • 【Oracle】SQL 将一组已经排序的数据进行分组,按照每组50行进行分组
    【Oracle】SQL将一组已经排序的数据进行分组,按照每组50行进行分组简单来说,使用ceil函数SELECTyour_column,--ROW_NUMBER()OVER(ORDERBYyour_column)为排序的开窗函数,用那种都可以CEIL(ROW_NUMBER()OVER(ORDERBYyour_column)/51)ASgroup_numberFR......
  • openlayers WebGL裁剪图层,双图层拼接显示
    本篇介绍一下使用openlayersWebGL裁剪图层,双图层拼接显示1需求WebGL裁剪图层,双图层拼接显示2分析图层prerender和postrender事件的使用WebGLscissor方法的使用scissor方法指定了一个裁剪区域,用来将绘图区域限制在其限定的盒形区域内。gl.scissor(x,y,width......
  • 达梦数据库体系架构
    提示:本文内容包含达梦数据库体系架构基本知识。文章目录前言一、DM逻辑结构1.1逻辑存储数据结构关系1.2表空间1.3页1.4簇1.5段1.51数据段1.52临时段1.53回滚段二、DM物理结构2.1配置文件2.2控制文件2.3数据文件2.4重做日志文件2.5归档日志文件2.6逻辑日志文件......
  • R语言将多景遥感影像拼接在一起的方法
      本文介绍基于R语言中的raster包,遍历文件夹,读取文件夹下的大量栅格遥感影像,并逐一对每一景栅格图像加以拼接、融合,使得全部栅格遥感影像拼接为完整的一景图像的方法。  其中,本文是用R语言来进行操作的;如果希望基于Python语言实现类似的批量拼接、镶嵌操作,大家可以参考Python......
  • 达梦数据库系列—26. DSC主备搭建
    配置DSC主备配置环境节点机器 实例名称 IP 133 GRP1_RT_01 192.168.64.133 192.168.169.143端口规划实例名PORT_NUMMAL_INST_DW_PORTMAL_HOSTMAL_PORTMAL_DW_PORTDSC0166364567192.168.169.11183383567DSC0266374568192......
  • 成为MySQL DBA后,再看ORACLE数据库(十三、物理备份)
    前面总结了ORACLE的逻辑备份,本文来总结以下ORACLE的物理备份。数据库的备份一般分为冷备份和热备份,其中冷备份是指将数据库彻底关闭后进行的一致性备份,由于需要关停数据库所以在实际应用中很少用到冷备份。而热备份是指在数据库运行的同时对数据库进行备份,本文主要总结的是ORACLE......
  • Oracle 11g dg switchover切换操作流程
    主库切换为物理备库查看主库的状态--获取/确认主库的状态信息以及保护模式SQL> set linesize 720SQL> col name for a10SQL> col open_mode for a10SQL> col database_role for a14SQL> col switchover_status for a16SQL> col force_logging for a8SQ......
  • Oracle 使用append对insert大批量数据进行优化
    append介绍/+append/1、概念:append属于directinsert,归档模式下appendtablenologging会大量减少日志,非归档模式append会大量减少日志,append方式插入只会产生很少的undo。2、优势:使用append,一是减少对空间的搜索;二是有可能减少redolog的产生。所以append方式会快很多,一......
  • oracle数据库状态监控
    1、功能介绍  1、检查oracle数据库的运行状态  2、第一次失败后,等待5秒钟再次检查一次2、脚本#!/bin/bashsource/etc/profileexportNLS_LANG=AMERICAN_AMERICA.AL32UTF8w=$(cd$(dirname$0);pwd)#检查数据库的方法fun(){result=$(sqlplus-s${user}/${p......
  • Java字符串(String、字符串拼接、原理)
    文章目录一、String字符串1.1创建方式【直接赋值、new一个对象】1.1.1使用字符串字面值直接赋值:(1)字符串字面量创建String对象的转换过程(2)一些方法(3)说明1.1.2使用`new`关键字创建字符串对象,将内容赋值给变量:(1)`String`类有多个构造函数,其中一些常用的包括:(2)说明(3)引用的......