substring截取字符串在mysql中如何使用

SUBSTRING()函数用于提取字符串,语法为SUBSTRING(str,pos,len)或SUBSTRING(str FROM pos for len),pos从1开始,len可选;示例:SUBSTRING(‘Hello, World!’,8,5)返回’World’,SUBSTRING(‘Hello, World!’,8)返回’World!’,支持负数位置如SUBSTRING(‘Hello, World!’,-6,5)返回’World’;实际应用中可结合position()提取邮箱域名SUBSTRING(email,POSITION(‘@’ IN email)+1),或提取手机号前三位SUBSTRING(phone,1,3)。

substring截取字符串在mysql中如何使用

mysql 中,SUBSTRING() 函数用于从字符串中提取子串。它可以根据指定的位置和长度截取字符,使用起来非常灵活。

基本语法

SUBSTRING() 的常用语法格式如下:

SUBSTRING(str, pos, len) SUBSTRING(str FROM pos FOR len)

参数说明:

  • str:要截取的原始字符串
  • pos:起始位置(从1开始计数,不是0)
  • len:要截取的字符长度(可选,如果不写则截取从pos到末尾的所有字符)

常见用法示例

假设有一个字符串 ‘Hello, World!’,我们来看看几种典型用法:

1. 截取固定长度子串

select SUBSTRING(‘Hello, World!’, 8, 5); — 结果:World

2. 从指定位置截取到末尾

SELECT SUBSTRING(‘Hello, World!’, 8); — 结果:World!

3. 使用负数位置(从右往左数)

substring截取字符串在mysql中如何使用

如知AI笔记

如知笔记——支持markdown的在线笔记,支持ai智能写作、AI搜索,支持DeepseekR1满血大模型

substring截取字符串在mysql中如何使用27

查看详情 substring截取字符串在mysql中如何使用

SELECT SUBSTRING(‘Hello, World!’, -6, 5); — 结果:World

负数表示从字符串末尾倒数,-1 是最后一个字符。

在实际查询中的应用

比如有一张用户表 users,其中 email 字段存储邮箱地址,想提取 @ 符号后面的域名部分:

SELECT email, SUBSTRING(email, POSITION(‘@’ IN email) + 1) AS domain FROM users;

这里结合了 POSITION() 函数找到 @ 的位置,然后从下一个字符开始截取到末尾。

再比如提取手机号前三位作为地区码:

SELECT SUBSTRING(phone, 1, 3) AS area_code FROM users;

基本上就这些。掌握好起始位置和长度,就能准确提取所需内容。

上一篇
下一篇
text=ZqhQzanResources