全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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;
/

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Oracle  # 自定义split  # 自定义split函数示例  # 自定义split()  # Oracle用decode函数或CASE-WHEN实现自定义排序  # Oracle自定义脱敏函数的代码详解  # Oracle存储过程和自定义函数详解  # Oracle学习记录之使用自定义函数和触发器实现主键动态生成  # Oracle定义DES加密解密及MD5加密函数示例  # oracle定义常用函数的过程  # 希望能  # 自定义  # 谢谢大家  # 源代码  # 一个函数  # 分隔符  # ty_str_split  # TABLE  # CREATE  # REPLACE  # TYPE  # p_delimiter  # RETURN  # INT  # p_str  # FUNCTION  # fn_var_split  # sql  # abc  # defg 


相关文章: 如何在服务器上配置二级域名建站?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  北京企业网站设计制作公司,北京铁路集团官方网站?  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  html制作网站的步骤有哪些,iapp如何添加网页?  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  韩国服务器如何优化跨境访问实现高效连接?  如何选择建站程序?包含哪些必备功能与类型?  如何通过服务器快速搭建网站?完整步骤解析  Python路径拼接规范_跨平台处理说明【指导】  Thinkphp 中 distinct 的用法解析  网页设计网站制作软件,microsoft office哪个可以创建网页?  ,购物网站怎么盈利呢?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  如何快速查询网站的真实建站时间?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  北京制作网站的公司,北京铁路集团官方网站?  学校建站服务器如何选型才能满足性能需求?  制作农业网站的软件,比较好的农业网站推荐一下?  如何在建站主机中优化服务器配置?  长沙企业网站制作哪家好,长沙水业集团官方网站?  如何在服务器上三步完成建站并提升流量?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  高端网站建设与定制开发一站式解决方案 中企动力  深圳网站制作培训,深圳哪些招聘网站比较好?  如何用花生壳三步快速搭建专属网站?  如何通过万网虚拟主机快速搭建网站?  电脑免费海报制作网站推荐,招聘海报哪个网站多?  建站主机服务器选型指南与性能优化方案解析  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  外贸公司网站制作,外贸网站建设一般有哪些步骤?  学校为何禁止电信移动建设网站?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  如何通过VPS建站实现广告与增值服务盈利?  如何选择香港主机高效搭建外贸独立站?  如何通过西部数码建站助手快速创建专业网站?  建站之星如何实现网站加密操作?  建站之星安装后如何配置SEO及设计样式?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  如何用wdcp快速搭建高效网站?  如何快速搭建高效服务器建站系统?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  广州建站公司哪家好?十大优质服务商推荐  公司网站的制作公司,企业网站制作基本流程有哪些?  高防服务器租用指南:配置选择与快速部署攻略  简历在线制作网站免费版,如何创建个人简历?  如何在IIS服务器上快速部署高效网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。