`

如何合并多行数据为一行数据

 
阅读更多

select * from data1 案件表

ID             NAME

1               案件1

2               案件2

select * from data2  当事人表

ID               NAME

1                 当事人1

1                 当事人2

2                  当事人3

2                  当事人4

案件表分为案件1和案件2,当事人表分为1234四个当事人,想要得到的结果为:

案件                   当事人

案件1                 当事人1、当事人2

案件2                 当事人3、当事人4

SQL语句的写法如下:

select (SELECT max(substr(name,2)) name 

FROM 

(SELECT id,sys_connect_by_path(name,',') name 

FROM 

(SELECT id,name,id||rn rchild,id||(rn-1) rfather 

FROM 

(SELECT d2.id ,d2.name,row_number() over (PARTITION BY d2.id ORDER BY d2.name) rn FROM data2 d2)) 

CONNECT BY PRIOR rchild=rfather START WITH rfather LIKE '%0') where id=d1.id

GROUP BY id)  as dsr,d1.name

 from data1 d1

 

分享到:
评论

相关推荐

    sybase数据库多行合并为一行多列.sql

    sybase数据库是不支持group_concat函数的,此文件为sybase存储过程样例,可以将多行信息按标识合并为一行多列。

    sql实现多行合并一行

    总结来说,通过巧妙地运用Oracle的`CONNECT BY`和`SYS_CONNECT_BY_PATH`函数,我们可以实现多行数据到一行的合并,这对于报告展示和数据分析非常实用。不过要注意的是,这种方法在大数据量下可能会有性能问题,因为...

    多行数据转换为一行数据

    此工具可以方便开发人员,把多行数据转换为一行数据,操作简单,快捷

    一列分割成多列,多行合并为一行

    SQL语句用with将列分割成多列存为临时表,再将多行某个字段拼接合并为一行

    sql 多行数据一行显示

    多行数据一行显示多行数据一行显示多行数据一行显示多行数据一行显示

    SQL多行变一行的方法

    SQL方法,将一列中的多行变为一行,将按一定条件筛查出来的多行数据变为一行数据

    mysql_一列分多行操作,在一个表里的几行数据需要分拆成单行存储到一行中

    mysql_一列分多行操作,在一个表里的几行数据需要分拆成单行存储到一行中,mysql_一列分多行操作,在一个表里的几行数据需要分拆成单行存储到一行中 mysql_一列分多行操作,在一个表里的几行数据需要分拆成单行存储...

    oracle10g,9i多行合并一行函数

    通过上述两个示例,我们可以看到,在Oracle的不同版本中,虽然实现方式有所不同,但都能有效地将多行数据合并为一行。这两种方法各有特点,可以根据实际使用的Oracle版本和个人偏好选择合适的方式。

    IREPORT中多行某列数据的合并

    例如,如果我们有一个表格,其中包含员工的姓名、性别、序号和工资卡号等字段,而每个姓名可能对应多个序号和工资卡号,这时我们就需要将相同姓名的性别合并到一行。本文将详细解释如何在IREPORT中实现这种多行某列...

    mysql如何将多行数据合并成一行

    在MySQL数据库中,有时我们需要将具有相同分组标识的多行数据合并成一行,以便于数据分析和报告。这里,我们主要关注的是`GROUP_CONCAT`函数,它是一种非常实用的SQL聚合函数,能够帮助我们实现这个目标。下面,我们...

    Sybase怎么将多行数据分组合并成一行多列

    背景 题目比较抽象,具体解释一下。...这里多行数据比较混乱,想将多行数据按照标识分组,再改为一行多列: 客户 状态 小老鼠 20200428:高兴 20200502 难受 20200503:相思 小八戒 20200429:开心 202

    xml多行变一行工具xml多行变一行工具

    这个工具能够将XML的多行格式转换为一行,从而消除因换行符导致的解析错误。这对于开发者来说非常实用,尤其是在编写和调试涉及XML数据的代码时,它可以简化XML字符串的处理,提高工作效率。 此工具可能具备以下...

    oracle多行合并一行

    通过以上步骤,我们可以有效地将多行数据合并为一行,极大地提高了数据展示和处理的效率。此方法适用于需要将多个字段值合并成一个字符串的场景,尤其是在需要快速生成报表的情况下非常实用。希望本文能对你在处理...

    在SQL Server中将多行合并为一行

    在SQL Server中,将多行合并为一行是一个常见的需求,特别是在数据分析和报表生成时。这个过程通常被称为数据透视或行列转换。在这个场景中,我们使用SQL Server中的`PIVOT`操作来实现这一目标。`PIVOT`是SQL Server...

    SQL语句行数据拆成多行及多行数据合并成一行的方法.docx

    在处理数据时,有时我们需要将一行数据拆分成多行,这在数据分析和报表制作中非常常见。下面将详细介绍几种常用的方法来实现这一操作。 ##### 1. SQL2000 用辅助表方法 这种方法适用于 SQL Server 2000 版本。首先...

    多行合并为一行的SQL语句.docx

    2. **ROW_NUMBER()** 函数被用来为每个编号下的每一行数据分配一个顺序号,便于之后使用`CONNECT BY`进行层次查询。 3. **SYS_CONNECT_BY_PATH** 是一个层级查询函数,用于连接同一条记录路径上的所有值。这里使用了...

    VB.NET源码 -一行多列转一列多行数据.txt

    标题中的"一行多列转一列多行数据"就是一个典型的行列转换问题,它涉及到数据结构的转换和遍历。在这个案例中,提供的资源可能是一个包含VB.NET源代码的文本文件,用于解决此类问题。 首先,我们需要理解这个问题的...

    SQL 语句 将一个表中用特殊字符分割的字段转换成多行数据.docx

    在数据库中,经常会遇到将一个字段中的特殊字符分割的字符串转换成多行数据的情况。这是一个常见的需求,但是网上提供的解决方案往往非常复杂,难以理解和实现。为了解决这个问题,我们可以创建一个字符串分割函数,...

Global site tag (gtag.js) - Google Analytics