oracle 逗号分隔列转多行数据

原始数据
ID NAME 1 TEST1,TEST2 2 TEST3,TEST4 3 TEST4,TEST5 4 TEST1,TEST4 5 TEST2,TEST4,TEST5
sql代码:
SELECT ID, REGEXP_SUBSTR(NAME, '[^,]+', 1, LEVEL) NAME FROM TITLE CONNECT BY LEVEL <= REGEXP_COUNT(NAME, '[^,]+') AND ROWID = PRIOR ROWID AND PRIOR DBMS_RANDOM.VALUE IS NOT NULL ORDER BY NAME;

结果:
ID  NAME
4   TEST1
1   TEST1
1   TEST2
5   TEST2
2   TEST3
4   TEST4
2   TEST4
5   TEST4
3   TEST4
5   TEST5
3   TEST5
 
posted @ 2021-11-10 19:56  明天过丶後  阅读(161)  评论(0)    收藏  举报