oracle 中 SPLIT_PART 报错:ORA-00904:”SPLIT_PART“ :标识符无效,怎么解决?
SELECT SPLIT_PART('aaa,111', ',', 1) AS Part1,
SPLIT_PART('aaa,111', ',', 2) AS Part2
from dual;
报错:SPLIT_PART标识符无效,求解
我本来目的是想把下面的WJMC2列 按,拆分成多个行,不要在一行,隔开。请教有什么好方法
回复
1个回答

test
2024-07-11
试一下这个 splitting-string-into-multiple-rows-in-oracle。
with temp as
(select 3260481 REQUESTID, '957543,976795' WJMC2
from dual
union all
select 3260484, '1005870,1021425,1041219'
from dual)
select distinct t.REQUESTID,
trim(regexp_substr(t.WJMC2, '[^,]+', 1, levels.column_value)) as error
from temp t,
table (cast(multiset(select level
from dual
connect by level <= length(regexp_replace(t.WJMC2, '[^,]+')) + 1) as sys.OdciNumberList)) levels
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容