- 浏览: 2288072 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (357)
- J2EE (49)
- JavaScript (40)
- Spring (19)
- Struts (5)
- CSS (8)
- Hibernate (16)
- Java (67)
- DWR (4)
- JSON (3)
- XFIRE (1)
- Tomcat (1)
- Ant (2)
- 设计模式 (2)
- 经典收藏 (2)
- JSP (10)
- Linux (0)
- WebLogic (11)
- myeclipse (13)
- Buffalo (4)
- 文件上传相关 (1)
- oracle (33)
- html (6)
- JSTL (3)
- SVN (2)
- GIT (1)
- 孙卫琴(Java网络编程精解) (1)
- DOM4J (2)
- Swing (1)
- AJAX (1)
- Eclipse (5)
- 日志组件 (3)
- PowerDesigner (1)
- Jquery (22)
- IT技术开发相关网址 (1)
- Nutz (1)
- 其它 (1)
- Velocity (3)
- WebService (1)
- MySql (2)
- Android (1)
- Maven (2)
- Quartz (11)
- Lucene (1)
- springsource (1)
- Junit (1)
- Activiti (0)
最新评论
-
yzlseu:
拼凑,没有营养
Activiti进阶—分配组任务 -
zhangsenhao:
非常赞!代码很清楚
SpringMVC3.0+MyIbatis3.0(分页示例) -
xiamw2000:
分页写得不对,应该是 : order by ${orderNa ...
SpringMVC3.0+MyIbatis3.0(分页示例) -
sheertewtw:
...
SpringMVC:上传与下载 -
kingtoon:
...
XSS之xssprotect
一 Oracle版本: 10g PLSQL: 8.0
二 具体代码如下:
1 类型
2 函数
3 具体应用
其它运用如下:
二 具体代码如下:
1 类型
CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (4000)
2 函数
CREATE OR REPLACE FUNCTION fn_split (p_str IN VARCHAR2, p_delimiter IN VARCHAR2) RETURN ty_str_split IS j INT := 0; i INT := 1; len INT := 0; len1 INT := 0; str VARCHAR2 (4000); str_split ty_str_split := ty_str_split (); BEGIN len := LENGTH (p_str); len1 := LENGTH (p_delimiter); WHILE j < len LOOP j := INSTR (p_str, p_delimiter, i); IF j = 0 THEN j := len; str := SUBSTR (p_str, i); str_split.EXTEND; str_split (str_split.COUNT) := str; IF i >= len THEN EXIT; END IF; ELSE str := SUBSTR (p_str, i, j - i); i := j + len1; str_split.EXTEND; str_split (str_split.COUNT) := str; END IF; END LOOP; RETURN str_split; END fn_split;
3 具体应用
CREATE OR REPLACE procedure testsplit(objids in varchar2,message out varchar2) as objid varchar2(32); begin for x in (select column_value as objid from (SELECT * FROM TABLE (CAST (fn_split (objids, ',') AS ty_str_split)))t) loop objid := x.objid; --执行删除或者有关与ID相关的操作 --delete t wher id=objid; --commit; message := message || ' ID:' || objid; end loop; EXCEPTION WHEN OTHERS THEN message :='测试split函数失败...'; end testsplit;
其它运用如下:
select t.column_value,rownum row_ from table( cast ( fn_split ('1,2,3,4,5,,7,,', ',') as ty_str_split ) ) t
发表评论
-
oracle之INSTR函数
2011-10-13 15:33 18参考资料 1 Oracle的instr函数 http://kn ... -
oracle之DECODE()函数
2011-10-13 10:12 1445参考资料 1 oracle中的DECODE()函数 http: ... -
oracle之存储过程,临时表,游标示例
2011-09-22 11:58 7812参考资料 1 ORACLE 存储过程返回临时表结果集 htt ... -
oracle之删除临时表(14452)
2011-09-22 11:25 2903参考资料 1 Oracle临时表删除时的ORA-14452错误 ... -
oracle之truncate && delete
2011-09-22 09:19 2919参考资料 实例对比Oracle ... -
oracle之临时表
2011-09-20 14:49 1403参考资料 1 Oracle 临时表用法 http://www. ... -
oracle之随机数(结果集)
2011-09-20 11:32 2173参考资料 Oracle中随机抽 ... -
转载:本地每天定时备份数据库
2011-09-15 12:52 1291转载: 本地每天定时备份数据库 http://relic6.i ... -
Oracle之instr(字符串包含函数)
2011-07-29 11:01 49296参考资料 1 oracle函数大 ... -
oracle中关于in和exists,not in 和 not exists用法与区别
2011-06-27 10:25 4055参考资料 1 oracle中关于in和exists,not i ... -
Oracle:递归查询SQL
2011-05-06 16:59 2059有部门表: ID,PID --查询所有 select cou ... -
Oracle:行转列函数,查询重复记录函数,过滤表中重复记录函数
2011-04-28 11:34 28121 行转列函数: select wm_concat(usern ... -
Oracle:创建序列与触发器
2011-04-15 14:41 18241 创建序列(为触发器提供服务) create seque ... -
Navicat for Oracle Cannot load OCI DLL
2011-04-12 14:34 19169参考资料 Navicat for Oracle Cannot ... -
oracle: if...elseif...else用法
2011-03-31 16:38 15174参考资料 1 <转载>oracle存储过程中的if ... -
Oracle 自动生成 32位ID
2011-03-11 11:27 55891 code select SUBSTR(TO_CHAR ... -
Oracle内连接、左外连接、右外连接、全外连接小总结
2011-01-24 11:11 13771转载:Oracle内连接、左外连接、右外连接、全外连接小总结 ... -
64位windows7 上安装32位oracle 10g 的方法
2010-12-23 12:17 3938转载:64位windows7 上安装32位oracle 10g ... -
Oracle 表解锁
2010-12-07 15:43 1578转载:Oracle 表解锁 http://toyota2006 ... -
Oracle字符串函数
2010-12-06 13:21 2703转载:Oracle字符串函数 ...
相关推荐
### Oracle 分隔字符串函数知识点详解 #### 一、Oracle 分隔字符串函数介绍 在 Oracle 数据库中处理字符串是一项常见的需求,特别是在数据清洗、格式转换等场景下。Oracle 提供了一系列强大的字符串处理函数来帮助...
本篇文章将深入探讨Oracle中用于拆分字符串的函数,并通过具体的示例展示它们的用法。 1. **instr() 函数** `instr()` 是Oracle中的一个内建函数,它用于查找子串在目标字符串中的位置。例如,`instr(string, ...
Oracle 中实现 Split 函数功能的优点是可以灵活地处理不同的分隔符和字符串长度。同时,这个函数也可以与其他 Oracle 函数和操作符结合使用,以实现更加复杂的数据处理任务。 在实际应用中,Oracle 中实现 Split ...
在Oracle数据库中,由于内置函数不直接支持像Java中的`split`那样拆分字符串并返回数组,因此开发者需要自定义函数来实现这一功能。这里提到的两种方法都是为了解决这个问题,即根据指定的分隔符将字符串拆分为一个...
在Oracle数据库中,并没有内置的split函数来处理字符串的分割操作。然而,在实际应用中,经常需要将一个包含多个值的字符串按照指定的分隔符进行拆分,转换为表格式的数据,以便进行进一步的处理或查询。为此,可以...
接下来,我们需要创建一个名为`split`的函数,该函数接受两个参数:待分割的字符串`p_list`和用作分隔符的字符串`p_sep`(默认值为`;`)。函数的返回类型被声明为之前定义的`type_split`类型,并且使用了管道函数(`...
oracle中没有方便分割字符串的的函数,仿照c#中的split方法和网友的方法,并进行了改进,(1)先自定义个类型str_split,(2)分割函数splitstr,返回table;(3)取第n个数组的get_splitstr,用户1,2,3部建好,使用时只需要...
在Oracle中,字符串分隔通常涉及到将一个长字符串按照特定的分隔符切割成多个子字符串。Oracle提供了多种函数来实现这一功能,例如`INSTR`、`SUBSTR`和`REGEXP_SUBSTR`等。下面我们将以`INSTR`和`SUBSTR`函数为例,...
oracle自定义函数,字符串分解,可按分隔符分解字符串,分隔符可自己随便定义,非常灵活。欢迎下载。
在Oracle数据库管理中,有时我们需要对字符串进行分割处理,这与.NET框架中的`Split`函数有着相似的功能。本文将详细介绍如何在Oracle中实现类似于.NET中的`Split`函数,并通过一个具体的SQL查询示例来展示其实现...
- `@split nvarchar(10)`:用于分隔字符串的字符或字符组合。 - `@index int`:指定要获取的子字符串的位置(索引)。 - **返回值**:`nvarchar(1024)`,表示按照指定分隔符分割后的第n个子字符串。 #### 2. **...
自定义函数`FUNCTION_SF_SPLIT_STRING`如上所示,是一个典型的用于分割字符串的函数,它接受两个参数:待分割的字符串`STRING`和用作分隔符的子字符串`SUBSTRING`,返回一个`VARCHAR2`类型的数组,其中包含了分割后...
这段描述进一步明确了具体的目标:使用PL/SQL编写一个函数,该函数能够接受一个原始字符串和一个分隔符作为输入参数,然后按照指定的分隔符将原始字符串分割成多个子字符串。这通常涉及到对字符串进行扫描、定位分隔...
在Oracle数据库中,由于默认的SQL语法并不支持像JavaScript或.NET框架中那样直接对字符串进行`split`操作,所以在处理批量操作时,需要通过自定义函数来实现类似的功能。这里介绍的方法是创建两个用户自定义函数,即...
2. 存储过程的编写,包括接收和处理分隔字符串的参数。 3. 数据库系统的调试方法,如设置断点、查看变量值和执行计划。 4. 如何利用数据库管理工具进行存储过程的测试和调试。 5. SQL脚本的编写和导入,用于重现问题...
通过这个自定义的`fn_var_split`函数,我们可以在Oracle数据库中方便地处理字符串,将一个大字符串按照指定的分隔符拆分成多个子字符串,适用于需要对字符串进行分组或处理的场景。这种自定义函数的方法不仅可以提高...
总的来说,`split`和`splitstr`函数是Oracle数据库中处理字符串的强大工具,它们提供了灵活且高效的字符串处理能力,尤其适用于需要批量处理字符串数据的场景。在实际工作中,根据具体需求定制类似的函数可以显著...
本文档将详细介绍如何使用Pipelined Table Function来实现一个split函数,该函数可以将输入字符串根据给定的分隔符进行分割,并返回一个包含分割后结果的表。 #### Pipelined Table Function 基础 Pipelined Table...
首先,我们看到创建了一个名为`fn_split`的函数,它用于将一个字符串按照指定的分隔符进行分割,返回结果为一个表类型(`ty_str_split`)。这是Oracle中的自定义表类型,用于存储分割后的子字符串。函数接受两个参数...