Oracle中instr函数使用方法
INSTR (源字符串,目标字符串,起始位置,匹配序号) 在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束。 语法如下: Oracle的instr函数使用实例INSTR方法的格式为INSTR(src,subStr,startIndex,count) src: 源字符串 subStr : 要查找的子串 startIndex : 从第几个字符开始。负数表示从右往左查找。 count: 要找到第几个匹配的序号 返回值: 子串在字符串中的位置,第1个为1;不存在为0. (特别注意:如果src为空字符串,返回值为null)。 用法举例: 最简单的一种,查找l字符,首个l位于第3个位置。 SQL> select instr('hello,java world','l') from dual; INSTR('HELLO,JAVAWORLD','L') ---------------------------- 3 查找l字符,从第4个位置开始。 SQL> select instr('hello,'l',4) from dual; INSTR('HELLO,'L',4) ------------------------------ 4 查找l字符,从第1个位置开始的第3个 SQL> select instr('hello,3) from dual; INSTR('HELLO, ------------------------------ 15 查找l字符,从右边第1个位置开始,从右往左查找第3个(也即是从左到右的第1个) SQL> select instr('hello,-1 ------------------------------ 3 找不到返回0 SQL> select instr('hello,'MM') from dual; INSTR('HELLO,'MM') ----------------------------- 0 源字符为空字符串''的情况 <div class="codetitle"><a style="CURSOR: pointer" data="7444" class="copybut" id="copybut7444" onclick="doCopy('code7444')"> 代码如下:<div class="codebody" id="code7444"> -- Created on 2010-12-22 by CHEN declare -- Local variables here i varchar2(2); begin -- Test statements here i := instr('',','); if i is null then dbms_output.put_line(' i is empty'); end if; end; 结果输出: i is empty (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |