跳到主要内容

SUBSTRING_INDEX

声明

SUBSTRING_INDEX(str, delim, count)

说明

在定界符 delim 以及 count 出现前,从字符串 str 返回字符串。

  • 如果 count 为正值,则返回最终定界符(从左边开始)左边的一切内容。

  • 如果 count 为负值,则返回定界符(从右边开始)右边的一切内容。

  • 如果任意一个参数为 NULL,返回 NULL

  • 如果 strdelim 为空字符串,则返回空串;

  • 如果 count=0,也返回空串。

*strdelimcount 参数支持数值与字符串的隐式转换。

示例

SELECT SUBSTRING_INDEX('ABCDABC', 'ABC', 0), SUBSTRING_INDEX('ABCDABC', 'ABC', 1), SUBSTRING_INDEX('ABCDABC', 'ABC', 2), SUBSTRING_INDEX('ABCDABC', 'ABC', 3), SUBSTRING_INDEX('ABCDABC', 'ABC', -1), SUBSTRING_INDEX('ABCDABC', 'ABC', -2), SUBSTRING_INDEX('ABCDABC', 'ABC', -3)\G
*************************** 1. row ***************************
SUBSTRING_INDEX('ABCDABC', 'ABC', 0):
SUBSTRING_INDEX('ABCDABC', 'ABC', 1):
SUBSTRING_INDEX('ABCDABC', 'ABC', 2): ABCD
SUBSTRING_INDEX('ABCDABC', 'ABC', 3): ABCDABC
SUBSTRING_INDEX('ABCDABC', 'ABC', -1):
SUBSTRING_INDEX('ABCDABC', 'ABC', -2): DABC
SUBSTRING_INDEX('ABCDABC', 'ABC', -3): ABCDABC
1 row in set (0.001 sec)