INSTR
函数在一个字符串中搜索指定的字符,返回发现指定的字符的位置。
注意
多字节符(汉字、全角符等),按 1 个字符计算。
语法
INSTR(c1,c2[,i[,j]])
参数
参数 | 说明 |
---|---|
c1 | 被搜索的字符串。字符串类型可为: |
c2 | 希望搜索的字符串。字符串类型可为: |
i | 搜索的开始位置,默认值为 1。当值小于 0 时,搜索从反方向开始,但是仍返回被搜索到的字符的正序位置。 |
j | 第 |
返回类型
NUMBER
数据类型。
示例
此示例展示了字符 某 在字符串 重庆某软**件公司** 中第一次出现的位置。
SELECT INSTR ('重庆某软件公司','某',1,1) instring FROM DUAL;
返回结果:
+----------+
| instring |
+----------+
| 3 |
+----------+
此示例中, instring1 应返回正向搜索 ce 时在字符串中第二次出现的位置,instring2 应返回反向搜索 ce 时在字符串中第二次出现的位置:
SELECT INSTR('oceanbase pratice','ce',1,2) instring1,INSTR('oceanbase pratice','ce',-1,2) instring2 FROM DUAL;
返回结果,正向搜索时 ce 第二次出现在第 16 位,反向搜索时 ce 第二次出现在第二位:
+----------+------------+
| instring1 | instring2 |
+----------+------------+
| 16 | 2 |
+----------+------------+