将带分隔符的字段,转成多行数据,如图,JJLB行数据转成列

SELECT
XCJHID,
XLID,
JHMC,
JHLX,
REGEXP_SUBSTR (JJLB, '[^,]+', 1, LEVEL, 'i') AS JJLB
FROM
PB_XCJH CONNECT BY LEVEL <= LENGTH (JJLB) - LENGTH (
REGEXP_REPLACE (JJLB, ',', '')
) + 1
AND XCJHID = PRIOR XCJHID
AND PRIOR dbms_random.
VALUE
IS NOT NULL
上面的sql只修改字段和表名就可以,别的不用处理
网友评论