oracle数组转换字符串函数,Oracle 字符串转数组的函数
create type char_table is table of varchar2(4000);--创建自定义类型脚本
create or replace function split_string(pi_str in varchar2, pi_separator in varchar2) --创建函数
return char_table
is
v_char_table char_table;
--create type char_table is table of varchar2(4000);--创建自定义类型脚本
v_temp varchar2(4000);
v_element varchar2(4000);
begin
v_char_table := char_table();
v_temp := pi_str;
while instr(v_temp, pi_separator) > 0
loop
v_element := substr(v_temp,1,instr(v_temp, pi_separator)-1);
v_temp := substr(v_temp, instr(v_temp,pi_separator)+ length(pi_separator) , length(v_temp));
v_char_table.extend;
v_char_table(v_char_table.count) := v_element;
end loop;
v_char_table.extend;
v_char_table(v_char_table.count) := v_temp;
return v_char_table;
end split_string;
--测试
select split_string('safs,utjtje,2412q1a,egwsff',',') from dual;
--实际应用
create or replace function initCFJG
return varchar2
is
pragma AUTONOMOUS_TRANSACTION;
guid varchar2(80):=''; --GUID
zjid varchar2(80):='';--主键id
lxid varchar2(80):=''; --处理结果类型id
lxidsArr char_table; --字符串数组,char_table为自定义类型
begin
for p in(select lp_id,zfgl_id,case_id,cf_amount from dzjc_xzzf_t_zfgl where lp_id is not null)
loop
zjid:=p.zfgl_id;
select split_string(p.lp_id,',') into lxidsArr from dual;
for i in 1 .. lxidsArr.count
loop
--dbms_output.put_line(lxidsArr(i));
select GETGUID into guid from dual;
select cfjd_cflx into lxid from cf_t_cfjd where rownum =1 and cfjd_id=lxidsArr(i);
if lxid='3'then
insert into dzjc_xzzf_t_zfgl(zfgl_id,case_id,lp_id,cf_amount) values (guid,p.case_id,'159_'||lxid,p.cf_amount);
else
insert into dzjc_xzzf_t_zfgl(zfgl_id,case_id,lp_id) values (guid,p.case_id,'159_'||lxid);
end if;
end loop;
delete from dzjc_xzzf_t_zfgl where zfgl_id=zjid;
end loop;
commit;
return '执行完成';
end;
oracle数组转换字符串函数,Oracle 字符串转数组的函数相关推荐
- php把数组转换成对象,php怎么将数组转换成对象
echoecho() 函数输出一个或多个字符串.注释:echo() 函数实际不是一个函数,所以您不必对它使用括号.然而,如果您想要传多于一个参数给 echo(),使用括号将会生成解析错误.print ...
- js 一维数组转换成二维、三维数组
需求:后台接口返回一个一维数组,前端需要转换成一个二维,或者三维数组进行级联展示 举个例子: 根据产品类型可以分为:智能手机.耳机.智能家电... 其中智能手机中又可以分为: Ace系列,Reno系列 ...
- HTML collection数组转换成正常的dom对象数组
HTML collection对象是一个类数组,如何将它转化为正常的数组,我们可以这样: var obj = document.getElementsByClassName('songlists') ...
- java String、Json对象与byte数组转换
用途 测试String对象与byte数组转换方式 测试Json对象与byte数组转换方式 源代码 import java.io.UnsupportedEncodingException; import ...
- numpy的基本使用 附python代码详细讲解(numpy函数,创建数组,常用属性,索引切片,数组的复制,修改维度,数组的分割、拼接、转置)
目录 使用array创建数组 使用arange创建数组 Numpy中的随机数创建 ndarray对象的常用属性 其他方式创建数组 索引和切片(一位数组.二维数组) 数组的复制 修改数组的维度 数组的拼 ...
- long数组与Long数组转换
2019独角兽企业重金招聘Python工程师标准>>> Set<Long> idsSet = new HashSet<Long>(); //过滤没有详情的id ...
- vue数组转list集合_数组转换成集合
package com.loaderman.jdk5; import java.util.ArrayList; import java.util.Arrays; import java.util.Li ...
- oracle关于字符串函数,Oracle字符串处理函数
Oracle字符串处理函数 Oracle字符串处理函数 2008年10月18日 星期六 23:45 项目中有涉及存储过程对字符串的处理,所以就将在网上查找到的资料汇总,做一个信息拼接式的总结. 以下信 ...
- Oracle 基础语句 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数...
--[字符串函数] --字符串截取substr(字段名,起始点,个数) select Name,substr(Name,2,4),substr(Name,0,3),substr(Name,-2,3), ...
- Go 学习笔记(11)— 切片定义、切片初始化、数组和切片差异、字符串和切片转换、len()、cap()、空 nil 切片、append()、copy() 函数、删除切片元素
1. 切片定义 Go 语言切片是对数组的抽象. Go 中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容 ...
最新文章
- C#筛法求出范围内的所有质数
- bat输出log日志操作
- .net中javascript去调用webservice
- 基于Android 虹软人脸、人证对比,活体检测
- idea中maven的setting.xml的配置
- 安卓窗口动画修改制作心得
- devops之路rancher安装
- 计算机开题报告中的研究方法,开题报告:经济学写论文用到的五种研究方法
- 一篇文章搞懂富人的内在逻辑|普通人如何改变命运?【财富02】
- matlab 产生时域波形,matlab时域波形图
- 稀疏编码中的正交匹配追踪(OMP)与代码
- javalang 生成抽象语法树AST ----python源码分析
- 计算机中英字幕精品教程合集
- 2017年最新苹果开发者账号注册申请流程最强详解!
- 《0~3岁孩子的 正面管教》——备忘
- (遇到问题)鼠标右键卡住且一直显示转圈
- 软考程序员有必要考吗?
- Word doc/docx 格式文件转换为 MarkDown
- 最新Sublime Text3 注册码激活码,持续更新!
- jackson jdk版本对应关系_使用Jackson
热门文章
- SecureCrt 常用命令
- linux进程创建截图,命令行程序创建网站截图(在Linux上)
- C语言之volatile用法(二十一)
- Linux内存buffer与cache区别
- 报错:libtool: Version mismatch error. This is libtool 2.4.6解决
- Android Binder机制的Native应用—双向通信
- Android OTA升级(2):开启升级过程
- Abseil之Copies, Abbrv
- Windows10---开启FTP服务与配置
- vba 字体颜色_Excel填充单元格颜色和改变字体颜色,用VBA是怎样实现的呢?