POSITION
描述
POSITION 函数用于查找子字符串在字符串中的位置(从 1 开始计数)。如果指定第 3 个参数 pos,则从 str 以 pos 下标开始的字符串处开始查找 substr 出现的位置。如果没有找到,返回 0
语法
POSITION ( <substr> IN <str> )
POSITION ( <substr>, <str> [, <pos>] )
参数
参数 | 说明 |
---|---|
substr | 需要查找的子字符串 |
str | 需要被查找的字符串 |
pos | 如果指定了此参数,则 str 以 pos 下标开始的字符串处开始查找 substr 出现的位置 |
返回值
substr 在 str 中出现的位置(从 1 开始计数)。如果没有找到,返回 0
举例
SELECT POSITION('bar' IN 'foobarbar'),
POSITION('bar', 'foobarbar'),
POSITION('bar', 'foobarbar', 5),
POSITION('xbar', 'foobar');
+----------------------------------+--------------------------------+-----------------------------------+----------------------------------+
| position('bar' in 'foobarbar') | position('bar', 'foobarbar') | position('bar', 'foobarbar', 5) | position('xbar', 'foobar') |
+----------------------------------+--------------------------------+-----------------------------------+----------------------------------+
| 4 | 4 | 7 | 0 |
+----------------------------------+--------------------------------+-----------------------------------+----------------------------------+