oracle split函数怎么使用

oracle中split函数的用法?

Oracle中的Split函数用法:

oracle split函数怎么使用
(图片来源网络,侵删)

首先需要定义 2 个类型

1. Row 类型

CREATE OR REPLACE TYPE ty_row_str_split as object (strValue VARCHAR2 (4000))

oracle split函数怎么使用
(图片来源网络,侵删)

2. Table 类型

CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split

再创建函数:

oracle split函数怎么使用
(图片来源网络,侵删)

CREATE OR REPLACE FUNCTION fn_split(p_str IN VARCHAR2,

p_delimiter IN VARCHAR2)

RETURN ty_tbl_str_split IS

ORACLE怎么拆分字符串?

分割字符串用substr函数即可。如:字符串为abc123,现在要截取成abc和123。select substr('abc123',1,3),substr('abc123',4,3) from dual;函数说明:substr('abc123',1,3)其中abc123是要被截取的字符串,1,代表从第一位开始截取,3代表要截取的长度。

oracle如何拆分以逗号分隔的字符串为多列?

oracle 中可以用connect by把字符串按都好分割:

比如定义字符串:

pv_no_list :='23,34,45,56';

SELECT DISTINCT REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) as "token"

FROM DUAL

CONNECT BY REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) IS NOT NULL

order by 1

返回结果:

TOKEN

23

oracle 中可以用connect by把字符串按都好分割:比如定义字符串:pv_no_list :='23,34,45,56';SELECT DISTINCT REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) as "token"FROM DUALCONNECT BY REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) IS NOT NULLorder by 1返回结果:TOKEN23344556

到此,以上就是小编对于oracle中split函数用法的问题就介绍到这了,希望这3点解答对大家有用。