前言:
此时大家对“oracle替换逗号”大约比较注意,我们都需要知道一些“oracle替换逗号”的相关资讯。那么小编也在网络上汇集了一些关于“oracle替换逗号””的相关知识,希望朋友们能喜欢,同学们快快来学习一下吧!需求:Oracle数据库的一行里的字段需要按照逗号拆分为多行
实现方式:
创建自定义函数实现
1、创建类型
CREATE OR REPLACE TYPE TYPE_SPLIT IS TABLE OF VARCHAR2 (4000);
2、创建函数
CREATE OR REPLACE FUNCTION SPLIT(P_STRING VARCHAR2, P_SEP VARCHAR2 := ',')RETURN TYPE_SPLITPIPELINED ISIDX PLS_INTEGER;V_STRING VARCHAR2(4000) := P_STRING;BEGINLOOPIDX := INSTR(V_STRING, P_SEP);IF IDX > 0 THENPIPE ROW(SUBSTR(V_STRING, 1, IDX - 1));V_STRING := SUBSTR(V_STRING, IDX + LENGTH(P_SEP));ELSEPIPE ROW(V_STRING);EXIT;END IF;END LOOP;END;
3、使用函数
select * FROM tmp t,table(split(t.zrrbid, ',')) t1
效果如下:
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #oracle替换逗号 #oracle 多行数据合并成一行 #oracle一行拆多行 #oracle 一行拆分多行