MySQL中的substr函数详解

2024年04月12日 MySQL中的substr函数详解 极客笔记

MySQL中的substr函数详解

在MySQL中,SUBSTR() 函数用于提取字符串的一部分。该函数接受三个参数,分别为原始字符串、开始位置和要提取的长度。在本文中,将详细解释 SUBSTR() 函数的用法和示例。

语法

SUBSTR(str, start, length)

  • str:要提取子字符串的原始字符串。
  • start:提取子字符串的起始位置。如果 start 是正数,则从字符串的起始位置开始计算;如果 start 是负数,则从字符串的末尾开始计算。
  • length:要提取的子字符串的长度。如果未指定 length,则提取从 start 位置到字符串末尾的所有字符。

示例

示例1:从指定位置开始提取子字符串

假设有一个字符串 “Hello, World!”,我们想提取从第六个字符开始的子字符串。

SELECT SUBSTR('Hello, World!', 6);

运行以上SQL语句,得到的结果是:

" World!"

示例2:从指定位置开始提取指定长度的子字符串

同样以字符串 “Hello, World!” 为例,我们想提取从第三个字符开始的长度为5的子字符串。

SELECT SUBSTR('Hello, World!', 3, 5);

运行以上SQL语句,得到的结果是:

"llo, "

示例3:提取末尾指定长度的子字符串

接着以字符串 “Hello, World!” 为例,我们想提取最后5个字符组成的子字符串。

SELECT SUBSTR('Hello, World!', -5);

运行以上SQL语句,得到的结果是:

"orld!"

注意事项

  • 如果 start 参数为 0 或者负数,则将返回 NULL
  • 如果 start 参数超出原始字符串长度,则将返回空字符串。
  • 如果 length 参数为负数,则将被视为0。
  • 如果 length 参数的绝对值大于原始字符串长度减去 start 的值,则返回从 start 到字符串末尾的所有字符。

总结

SUBSTR() 函数在MySQL中是一个非常有用的字符串处理函数,能够根据指定的起始位置和长度来提取子字符串。

本文链接:http://so.lmcjl.com/news/1862/

展开阅读全文