Oracle 行转列,逗号分隔

Posted

tags:

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

将查询结果多行数据用逗号分隔为一行
比如:

想转换为
100,211,102,111,110

参考技术A select wm_concat(t.operatorid) from 表 t

参考技术B --拆成了列
select a.* ,
REGEXP_SUBSTR(a.scm_order_s ,'[^,]+',1,l) AS scm_order_s
from rdc_province_col_order a,(SELECT LEVEL l FROM DUAL CONNECT BY LEVEL<=100) b
WHERE l <=LENGTH(a.scm_order_s) - LENGTH(REPLACE(scm_order_s,','))+1
--select * from rdc_province_col_order a where 1=1
and a.province_col_no = 'BZHCPKXQHZ2017122076385'
参考技术C wmsys.wm_concat 用这个函数,如果没有网上搜索一下,可以自己建一个本回答被提问者和网友采纳

以上是关于Oracle 行转列,逗号分隔的主要内容,如果未能解决你的问题,请参考以下文章

mysql通过逗号分隔符行转列

oracle行转列sql怎么写?

Hive 行转列 & 列转行

oracle行转列sql怎么写?

kettle之行转列,删除多余连接符

ORAClE sql如何实现行转列?