`
huibin
  • 浏览: 740390 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

oracle 拆分字符串函数 返回结果集

阅读更多

create or replace function split_str(var_str   in varchar2,
                                       var_split in varchar2)
/****************************************************
  注意 先执行下面语句 创建类型
  create or replace type t_ret_table is table of varchar2(100)

  ** 函数名称:split_str

  ** 参    数:【名称】         【类型 】      【说明】
  **           var_str          varchar2       要拆分的字符串
  **           var_split        varchar2       字符串分隔符
  ** 返 回 值:Result           t_ret_table    拆分后数组集合
  ** 摘    要:拆分字符串

  调用 举例:
  select * from table(split_str('2008-10-21','-'))
  ****************************************************/


  return t_ret_table is

  var_out     t_ret_table;
  var_tmp     varchar2(4000);
  var_element varchar2(4000);

begin
  var_tmp := var_str;
  var_out := t_ret_table();
  --如果存在匹配的分割符
  while instr(var_tmp, var_split) > 0 loop
    var_element := substr(var_tmp, 1, instr(var_tmp, var_split) - 1);
    var_tmp     := substr(var_tmp,
                          instr(var_tmp, var_split) + length(var_split),
                          length(var_tmp));
    --var_out.extend(1);
    var_out.extend;

    --重新设置var_element值
    var_element:=substr(var_element,instr(var_element,'>',1)+1);
    var_out(var_out.count) := var_element;

    --打印
    --SET SERVEROUT ON;
    DBMS_OUTPUT.PUT_LINE(var_element);
    --打印


  end loop;

  --var_out.extend(1);
  var_out.extend;
  var_out(var_out.count) := var_tmp;

  return var_out;
end split_str;

分享到:
评论

相关推荐

    Oracle拆分字符串,字符串分割的函数

    Oracle拆分字符串,字符串分割的函数,将返回一个表格,如果有需要的可以下载去看看。

    oracle-字符串去重函数

    传入一个字符串和该字符串的分割字符,返回去重后的字符串,可以直接在plsql中运行,简单的函数运用,能处理oracle中。资源仅供参考

    oracle_split_函数_返回数组

    最近在oracle 中用到拆分字符串返回数组,一直头痛,因为在 oracle 中没有类似java中有split 函数 ,所以要自己写。好不容搜到一个。那网上是到处都是这个代码。怎么找都是这个方法,我就用了。这个方法如下: ...

    灵活截取字符串

    对于截取字符串,Oracle中有两个函数substr(),instr()截取规则的字符串使用起来较为方便,...--str2 拆分字符串 --index 字符串个数索引 --查询语句:select num_char('ws++rq++sl++dl','++',4) from dual --返回结果:dl

    SQL 语句 将一个表中用特殊字符分割的字段转换成多行数据.docx

    找了网上很多资料,都没有详细的做法有的还很复杂,自己写了个分割函数,通过直接查询就能分割多行,很方便。

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...

    C#编程经验技巧宝典

    76 <br>0111 计算字符串中子字符串出现的次数 76 <br>0112 获得字符串中大写字母的个数 77 <br>0113 获得某字符在字符串中最后出现的位置 78 <br>0114 如何找出字符串中某一字符的所有位置 78...

    SQL注入攻击与防御(安全技术经典译丛)

     1.4.1 构造动态字符串  1.4.2 不安全的数据库配置  1.5 本章小结  1.6 快速解决方案  1.7 常见问题解答 第2章 SQL注入测试  2.1 概述  2.2 寻找SQL注入  2.2.1 借助推理进行测试  2.2.2 数据库...

    SQL注入攻击与防御

    1.4.1 构造动态字符串 10 1.4.2 不安全的数据库配置 16 1.5 本章小结 18 1.6 快速解决方案 18 1.7 常见问题解答 19 第2章 SQL注入测试 21 2.1 概述 22 2.2 寻找SQL注入 22 2.2.1 借助推理进行测试 22 2.2.2 数据库...

Global site tag (gtag.js) - Google Analytics