SUBSTRING 截取字符串

SUBSTRING(s, n, len) 函数用来获取指定字符串中的一个子字符串。

如果 SUBSTRING 函数带有 len 参数,将从 s 字符串的 n 位置开始,返回一个长度为 len 的子字符串。

如果 n 值是一个负值,则子字符串的位置起始于字符串结尾的第 n 个字符,即倒数第 n 个字符,而不是字符串的开头位置。

示例用法

(1)使用 SUBSTRING 函数,从字符串“0123456789”的起始位置 2 开始,返回长度为 5 的子字符串。如下:

mysql> select SUBSTRING('0123456789', 2, 5);
+-------------------------------+
| SUBSTRING('0123456789', 2, 5) |
+-------------------------------+
| 12345                         |
+-------------------------------+
1 row in set (0.04 sec)

(2)使用 SUBSTRING 函数,从字符串“0123456789”的起始位置 5 开始,返回到字符串结尾的子字符串。如下:

mysql> select SUBSTRING('0123456789', 5);
+----------------------------+
| SUBSTRING('0123456789', 5) |
+----------------------------+
| 456789                     |
+----------------------------+
1 row in set (0.05 sec)

由运行结果可知,上面返回了字符串“0123456789”从位置 5 到结尾的子字符串“456789”。

(3)使用 SUBSTRING 函数,从字符串“0123456789”从右向左3的位置开始,返回到结尾的子字符串。如下:

mysql> select SUBSTRING('0123456789', -3);
+-----------------------------+
| SUBSTRING('0123456789', -3) |
+-----------------------------+
| 789                         |
+-----------------------------+
1 row in set (0.09 sec)

由运行结果可知,上面返回了字符串“0123456789”从倒数3的位置,返回到结尾的子字符串“789”。

(4)使用 SUBSTRING 函数,从字符串“0123456789”从倒数3的位置开始,返回一个长度为2的子字符串。如下:

mysql> select SUBSTRING('0123456789', -3, 2);
+--------------------------------+
| SUBSTRING('0123456789', -3, 2) |
+--------------------------------+
| 78                             |
+--------------------------------+
1 row in set (0.13 sec)

关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号