码迷,mamicode.com
首页 > 数据库 > 详细

Oracle从数据库表中XML文件中读取对应字段

时间:2016-04-19 11:40:51      阅读:460      评论:0      收藏:0      [点我收藏+]

标签:

例子:

select substr(largetext,instr(largetext,‘A‘,1,1)+11,instr(largetext,‘B‘,1,1)-instr(largetext,‘A‘,1,1)-11) as CutStr
from 表名 where id=‘123456789‘
and instr(largetext,‘B‘,1,1)<>0;

1.instr

  返回要截取的字符串在源字符串中的位置,字符串分隔常用函数。

      instr( string1, string2, start_position,nth_appearance )

string1
源字符串,要在此字符串中查找。
string2
要在string1中查找的字符串 。
start_position
代表string1 的哪个位置开始查找。此参数可选,如果省略默认为1. 字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。
nth_appearance
代表要查找第几次出现的string2. 此参数可选,如果省略,默认为 1.如果为负数系统会报错。

 2.substr

substr(字符串,截取开始位置,截取长度) //返回截取的字

substr(‘Hello World‘,0,1) //返回结果为 ‘H‘  *从字符串第一个字符开始截取长度为1的字符串

substr(‘Hello World‘,1,1) //返回结果为 ‘H‘  *0和1都是表示截取的开始位置为第一个字符

substr(‘Hello World‘,2,4) //返回结果为 ‘ello‘

substr(‘Hello World‘,-3,3)//返回结果为 ‘rld‘ *负数(-i)表示截取的开始位置为字符串右端向左数第i个字符

测试:

select substr(‘Hello World‘,-3,3) value from dual

3.and instr(largetext,‘</CARRIERID>‘,1,1)<>0;判断有字符串

 

Oracle从数据库表中XML文件中读取对应字段

标签:

原文地址:http://www.cnblogs.com/Hblog/p/5407313.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!