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

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
ASv_length   NUMBER := LENGTH(p_string);v_start    NUMBER := 1;v_index    NUMBER;
BEGINWHILE(v_start <= v_length)LOOPv_index := INSTR(p_string, p_delimiter, v_start);IF v_index = 0THENPIPE ROW(SUBSTR(p_string, v_start));v_start := v_length + 1;ELSEPIPE 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!',','));

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

将行转为列显示:

select a.column_value v1,b.column_value v2 from
(select * from (select rownum rn,t.* from table(splitstr('Hello,Cnblogs!',',')) t)) a,
(select * from (select rownum rn,t.* from table(splitstr('Hello,Cnblogs!',',')) t)) b
where a.rn=1 and b.rn=2

如图:

实际SQL应用:

select FID from Ct_Ht_Maincontract where FID in (select a.column_value fid from (select * from (select * from table(splitstr('++4uu0vtQFyNPvT+pYq5kiOVzh4=,++dn+T66RsuI85VIAGfkcyOVzh4=',',')) t)) a )

转载于:https://www.cnblogs.com/sunhaoyu/p/8398093.html

Oracle拆分字符串函数与执行调用相关推荐

  1. Oracle字符拆分函数,Oracle拆分字符串函数有哪些呢?

    以"指定字符串"进行拆分,并通过表结构返回结果.代码如下: CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000) ...

  2. mysql怎么拆字符串_MySQL截取和拆分字符串函数用法示例

    本文实例讲述了MySQL截取和拆分字符串函数用法.分享给大家供大家参考,具体如下: 首先说截取字符串函数: SUBSTRING(commentid,9) 这个很简单,从第9个字符开始截取到最后.SUB ...

  3. mysql截取字符串一部分_MySQL截取和拆分字符串函数用法示例

    本文实例讲述了MySQL截取和拆分字符串函数用法.分享给大家供大家参考,具体如下: 首先说截取字符串函数: SUBSTRING(commentid,9) 这个很简单,从第9个字符开始截取到最后.SUB ...

  4. 数据库拆分字符串函数_PHP | 不使用库函数将逗号分隔的字符串拆分为数组

    数据库拆分字符串函数 Given a string with comma delimited, we have to split it into an array. 给定一个以逗号分隔的字符串,我们必 ...

  5. 【Kotlin】字符串操作 ① ( 截取字符串函数 substring | 拆分字符串函数 split | 解构语法特性 )

    文章目录 一.截取字符串函数 substring 二.拆分字符串函数 split 一.截取字符串函数 substring Kotlin 中提供了 截取字符串函数 substring , 可接收 Int ...

  6. [SqlServer]数据库中自定义拆分字符串函数Split()

     经常我们要用到批量操作时都会用到字符串的拆分,郁闷的是SQL Server中却没有自带Split函数,所以我们只能自己动手来解决一下.为了减少和数据库的通讯次数,我们都会利用这种方法来实现批量操作. ...

  7. oracle 数据库 字符串函数

    oracle 数据库 字符串函数 介绍oracle对字符串的操作函数,如图所示,测试字段为:STUDENT 表的 STUNAME 字段 ps:oracle字符串索引从1开始 1.定位索引函数:inst ...

  8. java split函数的用法,java拆分字符串_java中split拆分字符串函数用法

    摘要 腾兴网为您分享:java中split拆分字符串函数用法,中信期货,掌上电力,星球联盟,淘集集等软件知识,以及韩剧精灵,每日英语听力vip,龙卷风收音机,优衣库,中国平煤神马集团协同办公系统,光晕 ...

  9. oracle sql字符拆分字符串函数,oracle-是否有在PL / SQL中拆分字符串的功能?

    oracle-是否有在PL / SQL中拆分字符串的功能? 我需要编写一个过程来规范具有由一个字符连接的多个令牌的记录. 我需要获得这些令牌来分割字符串,并将每个令牌作为新记录插入表中. Oracle ...

最新文章

  1. C++:MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStart...
  2. python简单代码 春节集五福-集五福活动又来了,不过这个价值几十亿的大项目也别错过...
  3. 第10章 常用功能及函数集;客户端IP地址
  4. linux下svn迁移
  5. mq服务器与客户端消息同步,使用 ActiveMQ 实现JMS 异步调用
  6. Python程序-打印斐波拉契数列
  7. Linux 中的 XEN 虚拟化技术(二)Xen 的安装和配置
  8. nacos默认用户名密码_Docker下,两分钟极速体验Nacos配置中心
  9. DL实战(2):SiamFC - TensorFlow配置
  10. 实现浏览器多标签页通信
  11. 共筑未来 | 思腾合力加入光合组织,完成国产信创兼容适配
  12. 使用Tensorflow训练LSTM+Attention中文标题党分类
  13. 《革命之路-目击众神死亡的草原上野花一片》
  14. maven打包时打包指定的lib文件夹
  15. 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之36---支持BREW的手机
  16. 小话设计模式(九)组合模式
  17. 微信小程序折叠面板 (类似手风琴 收起展开一样的噢)
  18. Discuz论坛 创始人/超级管理员密码忘记解决办法!
  19. Maven项中的webapp下的静态页面无法访问报404(记录自己的错误)
  20. 单片机C51 - 串行通信原理及串口编程实验

热门文章

  1. 2015年第六届蓝桥杯C/C++ A组国赛 —— 第三题:显示二叉树
  2. java上传文件到ftp_java实现文件上传下载至ftp服务器
  3. zookeeper 创建临时顺序节点_Zookeeper学习笔记
  4. 【算法】单源最短路径和任意两点最短路径总结(补增:SPFA)
  5. linux libodbc.so.1,CentOS6.0虚拟机上安装nginx启动的错误---缺少libpcre.so.1共享库
  6. 记录kubesphere的安装与使用
  7. NCHW与NC4HW4数据排布在卷积优化上的优劣分析
  8. 可被三整除的最大和—leetcode1262
  9. java input属性_如何在h:inputText中指定命令属性?
  10. CentOS密码忘记后的操作