首页 > 编程知识 正文

oracle数据库分割字符串,字符串分割python

时间:2023-05-04 15:19:00 阅读:37037 作者:1321

Oracle字符串拆分精灵

一.创建数组类型

Sql代码

createorreplacetypet _ ret _ tableistableofvarchar2(512 )。

二、建立字符串划分函数

Sql代码

createorreplacefunctionf _ split _ string (as _ str varchar 2,

AS_SPLIT VARCHAR2)

RETURN T_RET_TABLE IS

-- Author : Guomm

- created :2013/5/221336038336046

-- Purpose :字符串拆分

-- Params

-- AS_STR :处理的字符串

-- AS_SPLIT :字符串分隔符

V_OUT T_RET_TABLE;

v_tmpvarchar2(4000;

v_ElementVarchar2(4000;

比根

V_TMP :=AS_STR;

V_OUT :=T_RET_TABLE (;

-如果有匹配的分隔符

whileinstr(v_tmp,AS_SPLIT )0 LOOP

v_element:=substr(v_tmp,1,instr ) v_tmp,AS_SPLIT )- 1 );

v_tmp:=substr(v_tmp,

instr(v_tmp,AS_SPLIT )长度(AS_SPLIT ),

长度(v _ tmp );

v_out.extend(1;

v_out(v_out.count ) :=V_ELEMENT;

结尾环路;

IF V_TMP IS NOT NULL THEN

v_out.extend(1;

v_out(v_out.count ) :=V_TMP;

结束If;

RETURN V_OUT;

END F_SPLIT_STRING;

OK,这个功能已经实现了。

三.呼叫

Sql代码

选择*从表(f _ split _ string (' 1,2,3,4,5,6 ',') )

DECLARE

V_ARRAY T_RET_TABLE;

比根

v _ array :=f _ split _ string (' 1,2,3,4,5,6 ',',');

FOR I IN 1.V_ARRAY.COUNT LOOP

DMS_output.put_line(v_array(I ) );

结尾环路;

结束;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。