MySQL SUBSTRING_INDEX() 函数使用指南

MySQL SUBSTRING_INDEX() 函数返回一个字符串中指定分隔符出现在指定次数之前的子字符串。

SUBSTRING_INDEX() 语法

这里是 MySQL SUBSTRING_INDEX() 函数的语法:

SUBSTRING_INDEX(str, delim, count)

参数

str
必需的。原字符串。
delim
必需的。在原字符串中搜索的分隔符。
count
必需的。分隔符出现的次数。如果 count 为负数,则从字符串尾部向前开始计数分隔符,返回分隔符之后的子字符串。

返回值

SUBSTRING_INDEX() 函数返回一个字符串中指定分隔符出现在指定次数之前的子字符串。

  • 如果参数 count 等于 0, SUBSTRING_INDEX() 函数返回一个空字符串 '';
  • 如果参数 count 为负数时, 则从字符串尾部向前开始计数分隔符,返回分隔符之后的子字符串。
  • 如果任意一个参数为 NULL 时, SUBSTRING_INDEX() 函数将返回 NULL

SUBSTRING_INDEX() 示例

这里列出了几个常见的 SUBSTRING_INDEX() 示例。

SELECT
    SUBSTRING_INDEX('www.mysql.com', '.', 2),
    SUBSTRING_INDEX('www.mysql.com', '.', -2),
    SUBSTRING_INDEX('www.mysql.com', '.', 0)\G
*************************** 1. row ***************************
 SUBSTRING_INDEX('www.mysql.com', '.', 2): www.mysql
SUBSTRING_INDEX('www.mysql.com', '.', -2): mysql.com
 SUBSTRING_INDEX('www.mysql.com', '.', 0):