Oracle中instr函数使用方法

Posted luo大侠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle中instr函数使用方法相关的知识,希望对你有一定的参考价值。

在Oracle中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束
INSTR (源字符串, 目标字符串, 起始位置, 匹配序号)
 
INSTR方法的格式为
INSTR(src, subStr,startIndex, count)
src: 源字符串
subStr : 要查找的子串
startIndex : 从第几个字符开始,负数表示从右往左查找。(此参数可选,默认为1)
count: 要找到第几个匹配的序号。(此参数可选,默认为1)
返回值: 子串在字符串中的位置,第1个为1;不存在为0。(特别注意:如果src为空字符串,返回值为null)。
 

举例:

scenarioinfo 中有60条数据,其中字段ywwd不为空的有40条(其中包含“积分”的有30条),字段ywwd为空的有20条。

查询scenarioinfo 表中字段ywwd包含“积分”的语句(返回30条数据):

select id, ywwd from scenarioinfo where instr(ywwd,积分,1,1) > 0;

查询scenarioinfo 表中字段ywwd不包含“积分”的语句(这里返回的结果集中不包含ywwd字段为null的结果,返回10条数据):

select id, ywwd from scenarioinfo where instr(ywwd,积分,1,1) = 0;

如果想返回的结果集中包含ywwd字段为null的,可以这样写(返回30条数据):

select id, ywwd from scenarioinfo where instr(ywwd,积分,1,1) = 0 and ywwd is null;

 

 

 

以上是关于Oracle中instr函数使用方法的主要内容,如果未能解决你的问题,请参考以下文章

oracle的常用函数 instr() 和substr()函数

oracle中类似indexof用法_instr函数

Oracle中instr()函数用法

Oracle中instr()函数用法

oracle 优化 instr 替换 =

oracle的常用函数 instr() 和substr()函数