INSTR

说明

INSTR函数是取得字符串中指定起始位置和长度的字符串

语法

instr ::=

参数

string

待搜索的源字符串。

  • 支持汉字
  • 支持空串和NULL值
  • NULL时,返回NULL
  • 字符串长度不能超过8000

substring

  • 要在string中查找的字符串。
  • 支持汉字
  • 为NULL,返回NULL
  • 字符串长度不能超过8000

position

查找字符串的起始位置。

  • 如果参数缺省,默认值为1。
  • 浮点型数向下取整。
  • 如果大于0,则从string的自左向右第position位为起始位置。
  • 如果大于string的长度,返回0。
  • 如果小于0,自右向左查找。
  • 如果小于0并且|position|大于string的长度,返回0。
  • 如果等于0,返回0值。
  • 为NULL时,返回NULL。

occurrence

查找第几次出现的substring

  • 如果参数缺省,默认值为1
  • 浮点数向下取整
  • 如小于等于0,返回0;
  • 为NULL时,返回NULL。

返回值

输出参数:string内从position位置开始第occurrence次出现串substring的起始位置,从1开始计数。

示例

示例1: 使用 INSTR 计算子串所在位置

--  使用 INSTR 计算子串所在位置
SELECT INSTR('OSCAR', 'S', 1, 1);
INSTR(int)      |
----------------
2               |
总数目:1