SQL中Charindex和Oracle中对应的函数Instr对比

时间:2022-06-01 20:55:59

sql :charindex('字符串',字段)>0 charindex('administrator',MUserID)>0 

oracle:instr(字段,'字符串',1,1) >0 instr(MUserID,'administrator',1,1)>0 

在项目中用到了OracleInstr 这个函数,顺便仔细的再次学习了一下这个知识。 

Oracle中,可以使用 Instr 函数对某个字符串进行判断,判断其是否含有指定的字符。 

其语法为: 
Instr(string, substring, position, occurrence) 
其中 

string:代表源字符串; 

substring:代表想聪源字符串中查找的子串; 

position:代表查找的开始位置,该参数可选的,默认为 1; 

occurrence:代表想从源字符中查找出第几次出现的substring,该参数也是可选的,默认为1; 
如果 position 的值为负数,那么代表从右往左进行查找。 
返回值为:查找到的字符串的位置。 

对于 Instr 函数,我们经常这样使用:从一个字符串中查找指定子串的位置。 

例如: 

SELECT Instr('Hello Word', 'o', -1, 1) "String" FROM Dual 的显示结果是 

Instring 
———— 
8