首先,创建一个获取字符被分割数量的函数。

create or replace function Get_StrArrayLength

(

av_str varchar2,  --要分割的字符串

av_split varchar2  --分隔符号

)

return number

is

lv_str varchar2(1000);

lv_length number;

begin

lv_str:=ltrim(rtrim(av_str));

lv_length:=0;

while instr(lv_str,av_split)<>0 loop

lv_length:=lv_length+1;

lv_str:=substr(lv_str,instr(lv_str,av_split)+length(av_split),length(lv_str));

end loop;

lv_length:=lv_length+1;

return lv_length;

end Get_StrArrayLength;

然后,根据传入的索引,取出被分割出来的字符

create or replace function Get_StrArrayStrOfIndex

(

av_str varchar2,  --要分割的字符串

av_split varchar2,  --分隔符号

av_index number --取第几个元素

)

return varchar2

is

lv_str varchar2(1024);

lv_strOfIndex varchar2(1024);

lv_length number;

begin

lv_str:=ltrim(rtrim(av_str));

lv_str:=concat(lv_str,av_split);

lv_length:=av_index;

if lv_length=0 then

lv_strOfIndex:=substr(lv_str,1,instr(lv_str,av_split)-length(av_split));

else

lv_length:=av_index+1;

lv_strOfIndex:=substr(lv_str,instr(lv_str,av_split,1,av_index)+length(av_split),instr(lv_str,av_split,1,lv_length)-instr(lv_str,av_split,1,av_index)-length(av_split));

end if;

return  lv_strOfIndex;

end Get_StrArrayStrOfIndex;

最后,调用这两个函数,我们就可以在sql里面像数组一样来使用分割字符串。

转自:http://wudag7318.blog.sohu.com/47507598.html

oracle分割字符串使用,oracle中分割字符串的方法相关推荐

  1. MATLAB 存放字符串(循环中调用字符串)

    MATLAB 存放字符串(循环中调用字符串) str=['asdfs';'sdadas';'qweqweqwe'];for i=1:3str(i,:) end 用分号隔开就可以调用了,比如在写图片标题 ...

  2. oracle plsql 字符串长度,plsql中常用字符串函数

    1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space f ...

  3. c语言中按照“|”字符串截取,shell中取字符串子串的几种方式 截取substr

    echo "123456789" | awk '{print substr($0,5,2)}' 截取 1)awk中函数substr substr(源字符串,开始索引,长度)   开 ...

  4. java字符串长度_Java中String字符串的最大长度?

    1.Java中的字符串String最大长度,编译期如果是javac编译就是65534.如果绕过javac编译的限制,其最大长度可以达到u2类型变达的最大值65535. Oracle JDK的编译工具J ...

  5. java字符连接字符串数组_Java中连接字符串的最佳方法

    java字符连接字符串数组 最近有人问我这个问题–在Java中使用+运算符连接字符串是否对性能不利? 这让我开始思考Java中连接字符串的不同方法,以及它们如何相互对抗. 这些是我要研究的方法: 使用 ...

  6. c语言向文件中写入字符串_C语言中定义字符串的两种方式及其比较

    先看如下代码: 以上用两种方式定义一个字符串: 1.定义一个char * 类型指针,指向字符串首字符首地址. 2.定义一个数组,数组里存放元素为字符串各个字符+'0',其中'0'为码0值,编译器会自动 ...

  7. java字符串转字符串列表_Java中的字符串列表示例

    java字符串转字符串列表 We have to read total number string i.e. "n", create a list of the Strings a ...

  8. c语言编程字符串_C编程中的字符串

    c语言编程字符串 Strings in C programming are an array of characters with a NULL character ('\0') appended a ...

  9. 字符函数和字符串函数_R中的字符串–函数及其操作

    字符函数和字符串函数 Strings are generally a one-dimensional (1D) arrays that contain single or multiple value ...

  10. c语言如何将8个字符串串联_C ++中的字符串串联:串联字符串的4种方法

    c语言如何将8个字符串串联 In this article, we will unveil the various ways of performing string concatenation in ...

最新文章

  1. 病毒组研究的挑战-相关的新兴技术
  2. Traceroute笔记
  3. Python基础教程— Struct模块
  4. MySQL数据库安装与Navicat Premium 12 安装与破解
  5. 分支-08. 高速公路超速处罚
  6. Linux:shell脚本命令: /dev/null 21 的理解
  7. group by(mysql oracle的区别) 的基本用法
  8. 1078. Hashing (25)-PAT甲级真题
  9. js 加密url java_js 对 URL 参数进行 加密 解密
  10. vue 动画 抖动效果_css开发常用动画
  11. PHIL2650 是个好课程
  12. 作为游戏策划,软件记录
  13. php文字下划线,如何在文字下面添加下划线
  14. 操作系统概念第八章部分作业题答案
  15. python3的print()函数的用法图文讲解
  16. dim c语言,编程基础-C程序的组成
  17. 制作Win7多合一原版系统光盘镜像
  18. 计算机制图孔中心线,机械制图中各种中心线绘制方法.docx
  19. 联想小新Pro14 2023款和2022款区别
  20. Java——随机生成4位验证码,由用户输入并验证是否输入正确,如果输入错误就生成新的验证码让用户重新输入,最多输入5次

热门文章

  1. android 获得手机号相关
  2. 计算机基础理论笔试题
  3. Leetcode:超出时间限制
  4. Java 7 一个技术标准的商业咒语
  5. 努力的富二代多可怕?曾畅销全球,每天卖出130万瓶的国货大牌“交班”后卖不动了!...
  6. mybatis-plus 关联查询
  7. Android10适配-针对从后台启动 Activity 的限制
  8. magento修改货币符号和货币符号的位置
  9. 用户最多的音乐app是哪个?
  10. 新基建引擎启动,你的机会将在哪里?