Oracle中instr函数
2015-04-25 11:13
232 查看
在oracle PL/SQL中,instr函数返回string2在string1中出现的位置,语法如下:
instr(string1,instring2[,start_position[,nth_appearance]])
string1:被搜索的字符串
string2:在string1里面寻找的字符串
start_position:从string1中开始搜索的位置,这是个可选参数,默认为1。
sting1中第一个字符的位置为1。如果这个参数为一个负数,那么搜索将从string1的末尾开始,并向string1的开始位置进行搜索。
nth_appearance:string2在string1中出现的次数,这是一个可选参数,默认值为1.
注意:如果string2未在string1中出现,那么instr函数的返回值为0。
实例
1.从起始位置开始搜索,第一次出现子串的位置
SQL> select instr('chen_linbo_bobo12082119','bo',1,1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
9
SQL> select instr('chen_linbo_bobo12082119','bo') from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
9
2.从后往前搜索,第二次出现子串的位置
SQL> select instr('chen_linbo_bobo12082119','bo',-1,1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
SQL> select instr('chen_linbo_bobo12082119','bo',-1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
3.从指定位置开始搜索
SQL> select instr('chen_linbo_bobo12082119','bo',7,3) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
SQL> select instr('chen_linbo_bobo12082119','bo',10,3) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
0
instr(string1,instring2[,start_position[,nth_appearance]])
string1:被搜索的字符串
string2:在string1里面寻找的字符串
start_position:从string1中开始搜索的位置,这是个可选参数,默认为1。
sting1中第一个字符的位置为1。如果这个参数为一个负数,那么搜索将从string1的末尾开始,并向string1的开始位置进行搜索。
nth_appearance:string2在string1中出现的次数,这是一个可选参数,默认值为1.
注意:如果string2未在string1中出现,那么instr函数的返回值为0。
实例
1.从起始位置开始搜索,第一次出现子串的位置
SQL> select instr('chen_linbo_bobo12082119','bo',1,1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
9
SQL> select instr('chen_linbo_bobo12082119','bo') from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
9
2.从后往前搜索,第二次出现子串的位置
SQL> select instr('chen_linbo_bobo12082119','bo',-1,1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
SQL> select instr('chen_linbo_bobo12082119','bo',-1) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
3.从指定位置开始搜索
SQL> select instr('chen_linbo_bobo12082119','bo',7,3) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
14
SQL> select instr('chen_linbo_bobo12082119','bo',10,3) from dual;
INSTR('CHEN_LINBO_BOBO12082119
------------------------------
0
相关文章推荐
- Oracle的instr函数
- 【sql】oracle 数据库instr函数的用法详解
- oracle instr函数(oracle 用instr 来代替 like)
- oracle中类似indexof用法 instr函数
- oracle instr函数(oracle 用instr 来代替 like)
- Oracle的instr函数使用
- oracle中INSTR函数的用法
- oracle instr函数(oracle 用instr 来代替 like)
- oracle的instr函数用法
- oracle中instr函数和substr函数的浅用法
- Oracle instr函数与SqlServer charindex的区别
- Oracle instr函数
- oracle利用substr和instr函数截取角色序列的第一个角色
- Oracle中的instr函数的用法
- 使用Oracle的instr函数与索引配合提高模糊查询的效率
- oracle中INSTR函数的用法
- 171207之Oracle中decode函数、SIGN函数和INSTR函数
- oracle instr函数
- oracle instr函数(oracle 用instr 来代替 like)
- Oracle instr函数与SqlServer charindex的区别