Oracle 自定义split 函数实例详解
Oracle 自定义split 函数
Oracle没有提供split函数,但可以自己建立一个函数实现此功能。比如“abc defg hijkl nmopqr stuvw xyz”,分隔符是空格,但空格个数不定。
源代码:
CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (4000); CREATE OR REPLACE FUNCTION fn_var_split ( p_str IN VARCHAR2, p_delimiter IN VARCHAR2 ) RETURN ty_str_split IS j INT := 0; len INT := 0; str VARCHAR2 (4000); str_split ty_str_split := ty_str_split (); v_str VARCHAR2 (4000) := RTRIM (LTRIM (p_str, p_delimiter), p_delimiter); BEGIN len := LENGTH (v_str); WHILE len > 0 LOOP j := INSTR (v_str, p_delimiter, 1); IF j = 0 THEN str := SUBSTR (v_str, 1); len := 0; str_split.EXTEND; str_split (str_split.COUNT) := str; ELSE str := SUBSTR (v_str, 1, j - 1); v_str := LTRIM (LTRIM (v_str, str), p_delimiter); len := LENGTH (v_str); str_split.EXTEND; str_split (str_split.COUNT) := str; END IF; END LOOP; RETURN str_split; END fn_var_split; /
测试结果:
1 12 123 1234 12345
DECLARE CURSOR c IS SELECT * FROM TABLE (CAST (fn_var_split (';1;12;;123;;;1234;;;;12345;', ';') AS ty_str_split)); r c%ROWTYPE; BEGIN OPEN c; LOOP FETCH c INTO r; EXIT WHEN c%NOTFOUND; DBMS_OUTPUT.put_line (r.column_value); END LOOP; CLOSE c; END; /
(资源库 www.zyku.net)
上一篇:Oracle数据库用户的密码过期时间如何修改为永不过期
栏 目:Oracle
下一篇:Oracle中转义字符的详细介绍
本文地址:https://www.zyku.net/oracle/614.html
您可能感兴趣的文章
- 03-28Python 执行函数的九种方法
- 03-15微信小程序 onLoad 函数
- 03-13帝国CMS提示信息函数printerror()
- 03-13帝国CMS常用函数介绍(二次开发参考)
- 03-13帝国CMS常用函数
- 03-13帝国CMS获取信息内容页地址函数sys_ReturnBqTitleLink
- 05-05SQLServer 2016安装时的错误:Polybase要求安装Oracle J
- 08-30织梦DedeCMS获取文章链接的函数GetOneArchive使用方法
- 11-30$_SERVER函数中QUERY_STRING和REQUEST_URI区别详解
- 07-27PHP自定义函数判断是否为Get、Post及Ajax提交的方法
- 10-19Microsoft SQL Server 2014数据库64位
- 12-28遥控小精灵-遥控小精灵应用软件功能介
- 11-15苹果13相册时间排序怎样设置
- 01-10恰猫小说-恰猫小说应用软件功能介绍
- 02-25vivox50退出平行空间方法
- 06-03Nginx状态监控以及日志分析详解
- 04-01jQuery validate验证隐藏表单(hidden)
- 08-09使用Certify申请Lets Encrype通配符SS
- 12-27华为nova9重置应用锁密码教程分享
- 01-01五音娃娃-五音娃娃应用软件功能介绍
最近更新
阅读排行
猜你喜欢
- 02-23真我gtneo开启定时开关机功能方法
- 11-04iqooz5x在哪关闭5g
- 08-15PS新建文档预设步骤介绍
- 09-20opporeno6息屏下启动相机怎样设置
- 03-27MySQL中的7种日志
- 09-19sleeptown重设时间方法分享
- 12-30喜阅阁-喜阅阁应用软件功能介绍
- 05-05实例讲解Nginx下的rewrite规则
- 11-22apache 将不带www的域名定向到带www的
- 03-03oppo手机录屏设置声音方法