- 浏览: 2242867 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (423)
- FileNet相关 (3)
- 应用服务器相关 (22)
- Java综合 (77)
- 持久层 (24)
- struts (11)
- webservice (8)
- 虚拟机 (2)
- 光盘刻录 (0)
- AD及AD集群 (1)
- JS (33)
- F5 (0)
- loadrunner8.1 (0)
- Java 反编译工具 (2)
- DataBase (62)
- ant (1)
- 操作系统 (29)
- 我的任务 (3)
- 平台架构 (16)
- 业务规则引擎 (2)
- 模板 (1)
- EJB (5)
- spring (24)
- CMMI (1)
- 项目管理 (20)
- LDAP (13)
- JMS (10)
- JSP (19)
- JBPM (2)
- web MVC框架设计思想 (2)
- 第三方支付平台 (2)
- BUG管理工具 (1)
- 垃圾站 (2)
- php (1)
- swing (1)
- 书籍 (1)
- QQ qq (2)
- 移动互联网 (26)
- 爱听的歌曲 (0)
- hadoop (4)
- 数据库 (9)
- 设计模式 (1)
- 面试经验只谈 (1)
- 大数据 (9)
- sp (1)
- 缓存数据库 (8)
- storm (2)
- taobao (2)
- 分布式,高并发,大型互联网,负载均衡 (6)
- Apache Ignite (0)
- Docker & K8S (0)
最新评论
-
wangyudong:
新版本 Wisdom RESTClienthttps://gi ...
spring rest mvc使用RestTemplate调用 -
wangyudong:
很多API doc生成工具生成API文档需要引入第三方依赖,重 ...
spring rest mvc使用RestTemplate调用 -
zhaoshijie:
cfying 写道大侠,还是加载了两次,怎么解决啊?求。QQ: ...
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
xinglianxlxl:
对我有用,非常感谢
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
k_caesar:
多谢,学习了
利用maven的resources、filter和profile实现不同环境使用不同配置文件
关键字:Oracle实现类split函数的方
项目里需要保存结构数据,批量传到后他进行保存,为了减小数据量,子集拼装的格式,使用存储过程进行保存。保存的过程中需要对数据解析。但是oracle没有Java中split类似的函数。从网上找了一个,也补全了一下。
CREATE OR REPLACE TYPE t_split_100 IS TABLE OF VARCHAR2(100);
create or replace function f_split_100(p_str_all in varchar2,
p_str_gap in varchar2)
return t_split_100 is
v_ntb_allstring t_split_100;
str_unit varchar2(100);
str_char varchar2(100);
i_str_length number;
i_str_index number;
begin
v_ntb_allstring := t_split_100();
i_str_length := length(p_str_all);
i_str_index := 1;
while (i_str_index <= i_str_length) loop
str_char := substr(p_str_all, i_str_index, 1);
if (str_char = p_str_gap) then
if (str_unit is not null) then
v_ntb_allstring.extend(1);
v_ntb_allstring(v_ntb_allstring.count) := str_unit;
str_unit := null;
end if;
else
str_unit := str_unit || str_char;
if (i_str_index = i_str_length) then
v_ntb_allstring.extend(1);
v_ntb_allstring(v_ntb_allstring.count) := str_unit;
str_unit := '';
end if;
end if;
i_str_index := i_str_index + 1;
end loop;
return(v_ntb_allstring);
end;
使用方法f_split_100(‘a|b|c|d’, ‘|’),返回的是Collection。
查看结果的方法 select * from table(f_split_100(‘a|b|c|d’, ‘|’));
Collection使用方法如下
EXISTS 该函数返回集合中第一个元素的索引,如果集合为空,返回NULL Collection.EXISTS(index
COUNT Collection.COUNT Collection.COUNT
DELETE 该过程从嵌套表中删除一个或多个或合部元素 Table_name.DELETE 删除所有元素
Table_name.delete(index)删除指定索引的记录
Table_name.delete(start_index,end_index)删除区间内元素
FIRST 返回集合第一个元素索引,如果集合为空,返回NULL Collection.FIRST
LAST 返回集合中最后一个元素索引,如果集合为空,返回NULL Collection. LAST
NEXT 返回集合中最后一个元素索引,如果集合为空,返回NULL Collection. NEXT
PRIOR Collection. PRIOR Collection. PRIOR
LIMIT 返回varray中创建元素的最大个数 Collection. LIMIT
EXTENDS 该过程在集合的末尾添加新的元素 Collection.EXTEND添加一个NULL元素;Collection.extends(n)添加N个NULL元素,Collection.extend(n,index)添加由index指定位置上元素的n个副表
TRIM Collection.TRIM 删除最后一个元素
Collection.TRIM(n)删除最后N个元素 Collection.TRIM 删除最后一个元素
Collection.TRIM(n)删除最后N个元素
项目里需要保存结构数据,批量传到后他进行保存,为了减小数据量,子集拼装的格式,使用存储过程进行保存。保存的过程中需要对数据解析。但是oracle没有Java中split类似的函数。从网上找了一个,也补全了一下。
CREATE OR REPLACE TYPE t_split_100 IS TABLE OF VARCHAR2(100);
create or replace function f_split_100(p_str_all in varchar2,
p_str_gap in varchar2)
return t_split_100 is
v_ntb_allstring t_split_100;
str_unit varchar2(100);
str_char varchar2(100);
i_str_length number;
i_str_index number;
begin
v_ntb_allstring := t_split_100();
i_str_length := length(p_str_all);
i_str_index := 1;
while (i_str_index <= i_str_length) loop
str_char := substr(p_str_all, i_str_index, 1);
if (str_char = p_str_gap) then
if (str_unit is not null) then
v_ntb_allstring.extend(1);
v_ntb_allstring(v_ntb_allstring.count) := str_unit;
str_unit := null;
end if;
else
str_unit := str_unit || str_char;
if (i_str_index = i_str_length) then
v_ntb_allstring.extend(1);
v_ntb_allstring(v_ntb_allstring.count) := str_unit;
str_unit := '';
end if;
end if;
i_str_index := i_str_index + 1;
end loop;
return(v_ntb_allstring);
end;
使用方法f_split_100(‘a|b|c|d’, ‘|’),返回的是Collection。
查看结果的方法 select * from table(f_split_100(‘a|b|c|d’, ‘|’));
Collection使用方法如下
EXISTS 该函数返回集合中第一个元素的索引,如果集合为空,返回NULL Collection.EXISTS(index
COUNT Collection.COUNT Collection.COUNT
DELETE 该过程从嵌套表中删除一个或多个或合部元素 Table_name.DELETE 删除所有元素
Table_name.delete(index)删除指定索引的记录
Table_name.delete(start_index,end_index)删除区间内元素
FIRST 返回集合第一个元素索引,如果集合为空,返回NULL Collection.FIRST
LAST 返回集合中最后一个元素索引,如果集合为空,返回NULL Collection. LAST
NEXT 返回集合中最后一个元素索引,如果集合为空,返回NULL Collection. NEXT
PRIOR Collection. PRIOR Collection. PRIOR
LIMIT 返回varray中创建元素的最大个数 Collection. LIMIT
EXTENDS 该过程在集合的末尾添加新的元素 Collection.EXTEND添加一个NULL元素;Collection.extends(n)添加N个NULL元素,Collection.extend(n,index)添加由index指定位置上元素的n个副表
TRIM Collection.TRIM 删除最后一个元素
Collection.TRIM(n)删除最后N个元素 Collection.TRIM 删除最后一个元素
Collection.TRIM(n)删除最后N个元素
发表评论
-
性能优化重要的mysql profile功能
2023-02-24 23:24 152关键字:性能优化重要的mysql profile功能 ... -
mysql源码解读之事务提交过程--第二篇
2018-01-10 15:03 464关键字:mysql源码解读 ... -
循环创建多张表 和 多个数据库sql语句(数据库水平分库分表时方便)
2016-03-04 12:58 12321关键字:循环创建多张 ... -
高可用、开源的Redis缓存集群方案
2015-04-16 12:25 3715推荐综合架构交流群:J ... -
各种Nosql数据库系统对比及应用场景分析
2015-04-15 16:29 721关键字:各种Nosql数据库系统对比及应用场景分析 导读:Kr ... -
数据库迁移之从oracle 到 MySQL
2015-04-11 09:38 868关键字:数据库迁移之从oracle 到 MySQL 开场白: ... -
Mongodb命令大全
2015-03-18 11:18 763关键字:Mongodb命令大全 他支持的数据结构非常松散,是类 ... -
MongoDB中缩减Shard集群(删除一个Shard)--删除一个分片
2015-03-13 12:29 3573关键字:MongoDB中缩减Shard集群(删除一个Shard ... -
Mongodb副本集(三个节点:一主一从一仲裁)-配置文件方式启动
2015-03-05 17:32 2019关键字:Mongodb副本集(三个节点:一主一从一仲裁)-配置 ... -
win7 64位的数据源(ODBC)配置问题
2015-01-20 16:36 1032关键字:win7 64位的数据源(ODBC)配置问题 ... -
atomikos(com.atomikos.icatch.SysException: Error in init(): Log already in use)
2014-10-15 13:12 8444关键字:atomikos(com.atomikos.icatc ... -
Mysql高可用架构
2014-09-02 11:41 2763关键字:Mysql高可用架构 最近花了点时间研究了一下mys ... -
MySQL原生HA方案 – Fabric体验之旅
2014-08-21 13:13 7052关键字:MySQL原生HA方案 – Fabric体验之旅 ta ... -
性能优化重要的mysql profile功能
2014-02-10 15:25 51关键字:性能优化重要的mysql profile功能 my ... -
mysql profile功能
2014-02-10 15:12 24关键字:mysql profile功能 mysql的sql ... -
mybatis优化
2013-11-29 00:12 6403关键字:mybatis优化 1、每个bean都要有对应的g ... -
动态分库分表策略
2013-11-21 15:52 1319关键字:动态分库分表策略 参考网址:http://drag ... -
Windows 2008下如何配置Oracle ASM
2013-08-19 13:23 58757关键字:Windows 2008下如何配置Oracle ASM ... -
plsql 链接远程机器零配置
2013-07-17 12:06 3845关键字:plsql 链接远程机器零配置 打开plsql会弹 ... -
MySQL+ODBC+5.1.9-win32驱动.rar
2012-11-16 13:51 1035关键字:MySQL+ODBC+5.1.9-win32驱动.r ...
相关推荐
本文档详细介绍了如何在Oracle数据库中实现像C#等其它编程语言中Split函数来拆分字符的功能。例子简单易懂,并附有详细的实现过程。
最近在oracle 中用到拆分字符串返回数组,一直头痛,因为在 oracle 中没有类似java中有split 函数 ,所以要自己写。好不容搜到一个。那网上是到处都是这个代码。怎么找都是这个方法,我就用了。这个方法如下: ...
oracle split函数,内有两种实现方式,可直接返回多行记录如: 传入参数: SELECT * FROM TABLE(mm_split('中国,be,c,de',',')); 返回四条记录: 中国 be c de
Oracle没有提供split函数,但可以自己建立一个函数实现此功能。比如“abc defg hijkl nmopqr stuvw xyz”,分隔符是空格,但空格个数不定。 源代码: CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR...
用Pipelined Table实现split函数的示例
oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全
首先在oracle中没有datediff()函数 可以用这个方法在oracle中实现该函数的功能。
实现oracle中 分割字符串的功能,返回一个表。 比如:abc;cde;dfd;133 select * from table(split('abc;cde;dfd;133')) 可以返回 abc cde dfd 133
oracle函数大全 oracle函数大全 oracle函数大全
Oracle 自定义函数需求有个字段,工号JOB_NUMBER ='10202804/10133066/10131810',数据库里是编号,所有想写个函数,将JOB_NUMBER 传递进去,然后返回 '张三/李四/王五',如果王五不存在则返回昵称拼接code '张三/...
ORACLE crc3函数,将字符类型转换成唯一的数字类型,例如CSDN,经过crc32函数转换后,得到的值为-1016176976
数值型函数、字符型函数、日期函数、转换函数、聚组函数、分析函数、其它函数
ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍
oracle 函数大全 参考函数 手册 速查 chm格式。。。
简单的oracle 时间比较函数,自己在网上找到并加以整理出来。
ORACLE函数.pdfORACLE函数ORACLE函数.pdf
oracle函数介绍 1 著名函数之单值函数 pdf oracle函数介绍 2 非著名函数之单值函数 pdf oracle函数介绍 3 著名函数之聚合函数 pdf oracle函数介绍 4 非著名函数之聚合函数 pdf oracle函数介绍 5 分析函数简述 ...
Oracle,类似.Net中的Split函数 Oracle,类似.Net中的Split函数
新手必备函数大全文档,函数不会用时看一看就清楚了,不知道用什么函数时看一看就清楚了