- 浏览: 286168 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (208)
- Oracle (21)
- webservice (7)
- java (33)
- java序列化反序列化 (0)
- weblogic (4)
- ajaxFileUpload (2)
- uploadify (1)
- jquery (7)
- MAXIMO (4)
- smartgit (1)
- css (3)
- POI (1)
- photoshop (0)
- linux (1)
- highchart 动态添加数据 (0)
- highchart (5)
- json (7)
- spring (11)
- maven (10)
- app (7)
- ASCII (1)
- mysql (26)
- excel (1)
- tomcat (3)
- bootstrap (1)
- ztree (2)
- dubbo (4)
- nginx (5)
- hadoop (3)
- osgi (3)
- ext (2)
- cxf (4)
- hibernate (1)
- 协议 (1)
- axis2 (1)
- javascript (2)
- vue (2)
- EhCache (2)
- Quartz (1)
- sqlite (1)
- saas (0)
- ionic (1)
- developer (1)
- maven 常用命令 (1)
- eclipse (1)
- mac (2)
- mongoldb (1)
- svn (1)
最新评论
-
wyb243:
大家千万不要按照这个写!!!PreparedStatement ...
JdbcTemplate插入后获取自增ID -
北雁南飞33:
有源码分享吗
自定义分页标签结合spring mvc、bootstrap、mybatis、mysql的使用 -
xcg992224:
大哥 不需要手动调用回收 是你在for的里面不应该每次都去ne ...
Java 垃圾回收测试
PL/SQL 中没有split函数,需要自己写。
代码:
create or replace type type_split as table of varchar2(50); --创建一个 type ,如果为了使split函数具有通用性,请将其size 设大些。
--创建function
create or replace function split
(
p_list varchar2,
p_sep varchar2 := ','
) return type_split pipelined
is
l_idx pls_integer;
v_list varchar2(50) := p_list;
begin
loop
l_idx := instr(v_list,p_sep);
if l_idx > 0 then
pipe row(substr(v_list,1,l_idx-1));
v_list := substr(v_list,l_idx+length(p_sep));
else
pipe row(v_list);
exit;
end if;
end loop;
return;
end split;
测试:
create or replace type type_split as table of varchar2(500)
create or replace function split
(
p_list varchar2,
p_sep varchar2 := ','
) return type_split pipelined
is
l_idx pls_integer;
v_list varchar2(500) := p_list;
begin
loop
l_idx := instr(v_list,p_sep);
if l_idx > 0 then
pipe row(substr(v_list,1,l_idx-1));
v_list := substr(v_list,l_idx+length(p_sep));
else
pipe row(v_list);
exit;
end if;
end loop;
return;
end split;
SQL> select * from table(split('northsnow,塞北的雪',','));
COLUMN_VALUE
--------------------------------------------------
northsnow
塞北的雪
SQL>
--将字符串转换成表数据
select DISTINCT SITEID from WORKORDER where siteid in (select * from table(split((select DECODE('PG', 'PG', 'TQ,GX', 'GX')from dual),',')));
代码:
create or replace type type_split as table of varchar2(50); --创建一个 type ,如果为了使split函数具有通用性,请将其size 设大些。
--创建function
create or replace function split
(
p_list varchar2,
p_sep varchar2 := ','
) return type_split pipelined
is
l_idx pls_integer;
v_list varchar2(50) := p_list;
begin
loop
l_idx := instr(v_list,p_sep);
if l_idx > 0 then
pipe row(substr(v_list,1,l_idx-1));
v_list := substr(v_list,l_idx+length(p_sep));
else
pipe row(v_list);
exit;
end if;
end loop;
return;
end split;
测试:
create or replace type type_split as table of varchar2(500)
create or replace function split
(
p_list varchar2,
p_sep varchar2 := ','
) return type_split pipelined
is
l_idx pls_integer;
v_list varchar2(500) := p_list;
begin
loop
l_idx := instr(v_list,p_sep);
if l_idx > 0 then
pipe row(substr(v_list,1,l_idx-1));
v_list := substr(v_list,l_idx+length(p_sep));
else
pipe row(v_list);
exit;
end if;
end loop;
return;
end split;
SQL> select * from table(split('northsnow,塞北的雪',','));
COLUMN_VALUE
--------------------------------------------------
northsnow
塞北的雪
SQL>
--将字符串转换成表数据
select DISTINCT SITEID from WORKORDER where siteid in (select * from table(split((select DECODE('PG', 'PG', 'TQ,GX', 'GX')from dual),',')));
发表评论
-
oracle修改端口
2017-09-24 12:39 685windows下修改oracle端口,绝对有用 https ... -
Oracle中查看游标和缓存
2015-07-27 11:49 19121、Oracle查看当前打开的游标数目 SQL& ... -
ORACLE截取字符串汇总
2015-06-23 20:21 1663oracle 截取字符(substr),检索字符位置(inst ... -
测试Oracle最大连接数
2015-06-16 15:54 800package com.jxtech; import ja ... -
ORACLE查看与某张表相关的存储,触发器,视图等
2015-06-04 17:01 1417SELECT * FROM user_source ... -
Oracle-常用监控SQL
2015-05-26 11:12 465Oracle-常用监控SQL 1. ... -
Oracle创建视图view错误ORA-01031: 权限不足
2015-05-26 11:03 7670create or replace view REPORT ... -
oracle 查询最近执行过的 SQL语句
2015-05-20 12:50 1550oracle 查询最近执行过的 SQL语句 selec ... -
oracle常用函数
2015-05-14 18:21 5421、oracle多行合并成一行 select col1,w ... -
查看oracle数据库的连接数以及用户
2015-05-12 11:15 14661、查询oracle的连接数 select count(*) ... -
Oracle 限制特定用户连接数
2015-04-22 09:10 41301 查询限制功能是否开 ... -
Oracle记录锁管理
2015-04-22 09:09 671查询用户锁 select b.username, ... -
ORCLE中例如1.11.123排序
2015-04-07 10:34 540create or replace function num_ ... -
ORACLE WHERE DECODE
2015-04-02 16:03 926在oracle中,where条件中使用decode函数 sp ... -
Oracl使用通配符搜索报DRG-10599: 列没有编制索引
2014-12-29 15:12 2460使用通配符对某表进行查询时报如下错误 java.sql.SQ ... -
ORACLE索引所有SQL导出
2014-12-29 14:23 1211SELECT INDEX_NAME, table ... -
PL/SQL DEVELOPER ORACLE创建定时调度job
2011-12-06 17:39 7159创建oracle调度job 右键“new”弹出 Sub ... -
存储过程中创建和删除表,并执行表空间
2011-12-06 17:33 1614create or replace procedure myt ... -
create table xx as select * from XXXX 指定表空间
2011-12-06 10:28 3452create table pw_test_jbpm_task ... -
Oracle中建立定时刷新的物化视图
2011-11-14 11:22 3599物化视图等价于数据的 ...
相关推荐
在Oracle数据库中,并没有内置的split函数来处理字符串的分割操作。然而,在实际应用中,经常需要将一个包含多个值的字符串按照指定的分隔符进行拆分,转换为表格式的数据,以便进行进一步的处理或查询。为此,可以...
Oracle 中实现 Split 函数功能 Oracle 中实现 Split 函数功能是指在 Oracle 数据库中实现类似于 C# 等编程语言中的 Split 函数,用于拆分字符的功能。下面是实现 Oracle 中 Split 函数功能的详细介绍。 首先,...
### Oracle Split函数实现与应用 #### 一、Oracle Split函数简介 在Oracle数据库中,处理字符串是一项常见的需求,尤其是在需要将包含特定分隔符的字符串分割成多个独立的部分时。Oracle标准SQL并没有提供直接用于...
在Oracle数据库中,由于内置函数不直接支持像Java中的`split`那样拆分字符串并返回数组,因此开发者需要自定义函数来实现这一功能。这里提到的两种方法都是为了解决这个问题,即根据指定的分隔符将字符串拆分为一个...
Oracle没有提供split函数,但可以自己建立一个函数实现此功能。比如“abc defg hijkl nmopqr stuvw xyz”,分隔符是空格,但空格个数不定。 源代码: CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR...
4、易于集成:函数设计简洁,易于集成到现有的Oracle数据库系统中,无需复杂的配置和改造。 5、优化查询性能:通过避免复杂的子查询和嵌套循环,我们的函数显著提升了数据处理的速度,减少了数据库资源的消耗,让您...
通过本示例,我们了解了如何使用Oracle中的Pipelined Table Function来实现一个高效的split函数。这种方法不仅可以简化字符串处理的任务,还可以显著提高处理大量数据时的性能。在实际应用中,根据不同的需求,我们...
本文将详细介绍如何在Oracle中实现类似于.NET中的`Split`函数,并通过一个具体的SQL查询示例来展示其实现过程。 #### 一、背景介绍 在.NET框架中,`string.Split`方法被广泛用于将字符串根据指定的分隔符拆分为多...
首先,我们可以使用Oracle的内置函数`REGEXP_SUBSTR`来实现字符串的拆分。`REGEXP_SUBSTR`用于从字符串中提取符合正则表达式模式的部分。在这个例子中,正则表达式`[^/]+`表示匹配除斜杠之外的任何字符的一个或多个...
oracle自定义函数,字符串分解,可按分隔符分解字符串,分隔符可自己随便定义,非常灵活。欢迎下载。
在Oracle数据库中,由于默认的SQL语法并不支持像JavaScript或.NET框架中那样直接对字符串进行`split`操作,所以在处理批量操作时,需要通过自定义函数来实现类似的功能。这里介绍的方法是创建两个用户自定义函数,即...
Oracle提供了一些内置的函数来帮助我们完成这个任务。本篇文章将深入探讨Oracle中用于拆分字符串的函数,并通过具体的示例展示它们的用法。 1. **instr() 函数** `instr()` 是Oracle中的一个内建函数,它用于查找...
"ORACLE函数大全.zip"这个压缩包文件很可能包含了对Oracle数据库系统中各种函数的详细说明,包括其属性、用法和功能。下面,我们将深入探讨一些常见的Oracle函数。 1. **转换函数**: - `TO_CHAR`:将数值或日期...
oracle中没有方便分割字符串的的函数,仿照c#中的split方法和网友的方法,并进行了改进,(1)先自定义个类型str_split,(2)分割函数splitstr,返回table;(3)取第n个数组的get_splitstr,用户1,2,3部建好,使用时只需要...
Erp/Ehr/Crm/Clm系统的开发者很多时候会用到姓名拆分为汉语拼音的代码。 这个函数可以帮你实现以下内容。...select fn_getpy( F_namesplit('张三',1),2) as 姓,fn_getpy( F_namesplit('张三',2),2) as 名 from dual
### Oracle 分隔字符串函数知识点详解 #### 一、Oracle 分隔字符串函数介绍 在 Oracle 数据库中处理字符串是一项常见的需求,特别是在数据清洗、格式转换等场景下。Oracle 提供了一系列强大的字符串处理函数来帮助...
oracle管道函数是一类特殊的函数,oracle管道函数返回值类型必须为集合 如果需要在客户端实时的输出函数执行过程中的一些信息,在oracle9i以后可以使用管道函数(pipeline function)。 关键字PIPELINED表明这是一个...
在本文中,我们将探讨如何在Oracle中添加`split`和`splitstr`这两个自定义函数,以优化批量操作的性能。 首先,我们需要创建一个名为`tabletype`的表类型,用于存储分割后的字符串元素: ```sql create or replace...