如何将oracle 中一条数据拆分成多条

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将oracle 中一条数据拆分成多条相关的知识,希望对你有一定的参考价值。

有拆分方式吗,可以使用表连接,将不同列的数据拆分成多条

select 字段A 
  from 表名
 where 筛选条件
union all
select 字段B 
  from 表名
 where 筛选条件

参考技术A 例如表名为test,数据如下
原数据为
col1 col2 col3 col4
A 1 2 3
B 1 2 3
然后用如下语句
select * from
(select col1,col2 from test
union all
select col1,col3 from test
union all
select col1,col4 from test) as t
order by col1
得到的数据就是

A 1
A 2
A 3
B 1
B 2
B 3

mysql将多条结果拼接成一条结果

1,实际数据

SELECT resource_id, resource_type FROM res_resource_mount 

技术图片

2,拼接之后数据

SELECT
    c.resource_id,
    GROUP_CONCAT(c.resource_type)
FROM
    (
        SELECT
            resource_id,
            resource_type
        FROM
            res_resource_mount 
    ) c
GROUP BY
    c.resource_id

技术图片

 

以上是关于如何将oracle 中一条数据拆分成多条的主要内容,如果未能解决你的问题,请参考以下文章

oracle中如何将一条记录拆分为多条记录

oracle 取重复数据中一条

Oracle通过一个字段的值将一条记录拆分为多条记录

(学)如何在Oracle中一次执行多条sql语句

Oracle通过一个字段的值将一条记录拆分为多条记录

oracle 如何返回多条记录