Oracle拆分字符串函数Oracle认证考试

文章作者 100test 发表时间 2009:09:12 06:21:05
来源 100Test.Com百考试题网


"libai">   本函数可以将“目标字符串”以“指定字符串”进行拆分,并通过表结构返回结果。代码如下:
  CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000).
  CREATE OR REPLACE FUNCTION splitstr(p_string IN VARCHAR2, p_delimiter IN VARCHAR2)
  RETURN str_split
  PIPELINED
  AS
  v_length  NUMBER := LENGTH(p_string).
  v_start  NUMBER := 1.
  v_index  NUMBER.
  BEGIN
  WHILE(v_start <.= v_length)
  LOOP
  v_index := INSTR(p_string, p_delimiter, v_start).
  IF v_index = 0
  THEN
  PIPE ROW(SUBSTR(p_string, v_start)).
  v_start := v_length   1.
  ELSE
  PIPE ROW(SUBSTR(p_string, v_start, v_index - v_start)).
  v_start := v_index   1.
  END IF.
  END LOOP.
  RETURN.
  END splitstr.
  创建完毕后,我们来测试一下,例如执行如下SQL:
  0select * from table(splitstr(Hello,Cnblogs!,,)).
  其输出结果为一个两行的表,如下图:
  将行转为列显示:
  0select a.column_value v1,b.column_value v2 from
  (0select * from (0select rownum rn,t.* from table(splitstr(Hello,Cnblogs!,,)) t)) a,
  (0select * from (0select rownum rn,t.* from table(splitstr(Hello,Cnblogs!,,)) t)) b
  where a.rn=1 and b.rn=2

  编辑特别推荐:

  oracle认证考试费用

  Oracle的入门心得

  使用Oracle外部表的五个限制

  Oracle服务器参数文件维护的四个技巧



相关文章


OracleSpool的用法小结Oracle认证考试
oracle认证辅导:查找乱码字符串的SQLOracle认证考试
Oracle里表空间的压缩Oracle认证考试
ORACLE导入时遇到的IMP00032错误Oracle认证考试
Oracle拆分字符串函数Oracle认证考试
Oracle在Windows操作系统上服务解析Oracle认证考试
LogMiner日志分析工具的使用Oracle认证考试
oracle认证:oracle时间用法Oracle认证考试
Oracle表连接的奇怪问题Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛