当前位置:首页 » 存储配置 » oracle存储过程split

oracle存储过程split

发布时间: 2023-09-14 04:01:47

‘壹’ oracle 如何用sql实现split功能

本函数可以将“目标字符串”以“指定字符串”进行拆分,并通过表结构返回结果。代码如下:

CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000);
CREATE OR REPLACE FUNCTION splitstr(p_string IN VARCHAR2, p_delimiter IN VARCHAR2)
RETURN str_split
PIPELINED
AS
v_length NUMBER := LENGTH(p_string);
v_start NUMBER := 1;
v_index NUMBER;
BEGIN
WHILE(v_start <= v_length)
LOOP
v_index := INSTR(p_string, p_delimiter, v_start);

IF v_index = 0
THEN
PIPE ROW(SUBSTR(p_string, v_start));
v_start := v_length + 1;
ELSE
PIPE ROW(SUBSTR(p_string, v_start, v_index - v_start));
v_start := v_index + 1;
END IF;
END LOOP;

RETURN;
END splitstr;

创建完毕后,我们来测试一下,例如执行如下SQL:

select * from table(splitstr('Hello,Cnblogs!',','));

其输出结果为一个两行的表,如下图:

热点内容
九成脚本 发布:2024-12-01 00:23:33 浏览:815
存储内存和运行内存的区别 发布:2024-12-01 00:03:39 浏览:253
编译状态图原理 发布:2024-11-30 23:54:22 浏览:738
谷歌搜索缓存服务器地址 发布:2024-11-30 23:38:59 浏览:503
箍筋加密原因 发布:2024-11-30 23:33:38 浏览:416
千兆路由器有哪些配置 发布:2024-11-30 23:33:36 浏览:411
产品配置具体指哪些 发布:2024-11-30 23:28:21 浏览:16
apt编译环境 发布:2024-11-30 23:28:12 浏览:382
java三大特性 发布:2024-11-30 23:27:08 浏览:481
绝地求生2安卓如何登 发布:2024-11-30 23:27:02 浏览:59