oracle 一个字段转多行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 一个字段转多行相关的知识,希望对你有一定的参考价值。

如何通过sql展示成下面这种

参考技术A 需要用wm_concat函数。

如test表中有如下数据:

现在要name列的内容都显示到同一行,可用如下语句:
搜索
select wm_concat(name) from test;

查询结果:追问

我是想将他拆分开 一列变成多行

本回答被提问者和网友采纳

oracle 如何将一个字段内容拆分多行显示

例子:

select regexp_substr(‘1,2,3,4,5‘, ‘[^,]+‘, 1, level)
from dual
connect by level <= regexp_count(‘1,2,3,4,5‘, ‘[^,]+‘)

 

释义:

REGEXP_SUBSTR函数格式如下:

function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)

__srcstr     :需要进行正则处理的字符串

__pattern    :进行匹配的正则表达式

__position   :起始位置,从第几个字符开始正则表达式匹配(默认为1)

__occurrence :标识第几个匹配组,默认为1

__modifier   :模式(‘i‘不区分大小写进行检索;‘c‘区分大小写进行检索。默认为‘c‘。)

以上是关于oracle 一个字段转多行的主要内容,如果未能解决你的问题,请参考以下文章

如何将Oracle查询结果多行数据转成一行平铺显示?

Oracle 字符串转多行(REGEXP_SUBSTR)

oracle中如何把表中具有相同值列的多行数据合并成一行

oracle数据库中如何将一列的内容转换成多行

Oracle:多列转多行

oracle某表的一个字段有多值,怎么把这值变成多行,其它数据为一样