oracle 返回table类型的结果集:
来源:互联网 发布:人工智能机器人ai 编辑:程序博客网 时间:2024/04/29 22:34
首先定义一个行类型:
CREATE OR REPLACE TYPE "SPLIT_ARR" AS OBJECT(nowStr varchar2(18))
其次以此行类型定义一个表类型:
CREATE OR REPLACE TYPE "SPLIT_TAB" AS TABLE of split_arr;
定义函数(此函数完成字符串拆分功能):
CREATE OR REPLACE FUNCTION GetSubStr(
str in varchar2, --待分割的字符串
splitchar in varchar2 --分割标志
)
return split_tab
IS
restStr varchar2(2000) default GetSubStr.str;--剩余的字符串
thisStr varchar2(18);--取得的当前字符串
indexStr int;--临时存放分隔符在字符串中的位置
v split_tab := split_tab(); --返回结果
begin
dbms_output.put_line(restStr);
while length(restStr) != 0
LOOP
<<top>>
indexStr := instr(restStr,splitchar); --从子串中取分隔符的第一个位置
if indexStr = 0 and length(restStr) != 0 then--在剩余的串中找不到分隔符
begin
v.extend;
v(v.count) := split_arr(Reststr);
return v;
end;
end if;
if indexStr = 1 then---第一个字符便为分隔符,此时去掉分隔符
begin
restStr := substr(restStr,2);
goto top;
end;
end if;
if length(restStr) = 0 or restStr is null then
return v;
end if;
v.extend;
thisStr := substr(restStr,1,indexStr - 1); --取得当前的字符串
restStr := substr(restStr,indexStr + 1);---取剩余的字符串
v(v.count) := split_arr(thisStr);
END LOOP;
return v;
end;
select nowStr from Table(GetSubStr('111,222,333,,,',','));
- oracle 返回table类型的结果集:
- oracle函数返回table类型结果集
- Oracle table()函数查询函数返回的结果集
- ORACLE 函数返回对象类型结果集
- Oracle存储过程传参,参数使用date日期类型的参数,返回结果集
- oracle 返回结果集的存储过程
- Oracle 限定返回的结果集 -- ROWNUM
- Oracle 限定返回的结果集 -- ROW_NUMBER
- Oracle的存储过程返回结果集
- ORACLE关于返回结果集的问题
- struts2返回结果的类型
- oracle 方法返回集合类型[table]
- Oracle 方法返回集合类型[table]
- oracle function 返回自定义类型Table
- oracle 存储过程返回 结果集 table形式 (使用sys_refcursor 及程序包package 两种方式)
- Oracle存储过程返回select * from table结果
- Oracle Procedure 返回结果集
- ORACLE如何返回结果集
- css3基本功---主要属性归类
- 嵌入式系统Linux支持vfat文件系统
- C++中的friend详细解析
- MS Word 目录排版
- 关于python的密码字符串的问题
- oracle 返回table类型的结果集:
- Activiti流程设计工具
- Spring学习笔记之Spring MVC体系学习(一)
- Ubuntu下 嵌入式Qt开发环境的搭建
- 数据结构学习之二叉树
- 【Python+OpenCV】图片局部区域像素值处理(改进版)-一种特征提取方法
- .net C# POST请求数据,…
- 全球最杰出的14位程序员
- 多线程简介