当前位置:首页 > 知识教程 > 数据处理分析 > 正文

MySQL字符串截取常用操作和常用函数(substring、substring_index)

MySQL字符串截取常用操作和常用函数(substring、substring_index)

1、从左开始截取字符串

# 语法SELECT LEFT(str,len)
str:被截取的字符串
len:截取长度
# 示例
SELECT LEFT('TF-8220210412003-1', 10)
# 结果为:TF-822021012345678

2、从右开始截取字符串

# 语法SELECT RIGHT(str,len)
str:被截取的字符串
len:截取长度
# 示例
SELECT RIGHT('TF-8220210412003-1', 6)
# 结果为:2003-1 12345678

3、截取特定长度的字符串

# 语法SUBSTRING(str,pos)
str:被截取的字符串
pos:从第几位开始截取

SUBSTRING(str,pos,len)
str:被截取的字符串
pos:从第几位开始截取

# 示例
# 从字符串的第4个字符开始截取直至结束
SELECT SUBSTRING('TF-8220210412003-1', 4)
# 结果为:8220210412003-1

# 从字符串的第4个字符开始只截取6个字符
SELECT SUBSTRING('TF-8220210412003-1', 4, 6)
# 结果为:822021

# 从字符串的倒数第3个字符开始截取直至结束
SELECT SUBSTRING('TF-8220210412003-1', -3)
# 结果为:3-1

# 从字符串的倒数第9个字符开始,只截取3个字符
SELECT SUBSTRING('TF-8220210412003-1', -9, 3)
# 结果为:041

4、按关键字进行截取

# 用法:substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)
SELECT SUBSTRING_INDEX(str,delim,count)

# 截取第二个“-”之前所有的字符
SELECT SUBSTRING_INDEX('TF-8220210412003-1', '-', 2)
# 结果为:TF-8220210412003

# 截取倒数第二个“-”之后的所有字符
SELECT SUBSTRING_INDEX('TF-8220210412003-1', '-', -2)
# 结果为:8220210412003-1

# 如果关键字不存在,则返回整个字符串
SELECT SUBSTRING_INDEX('TF-8220210412003-1', '=',  2)
# 结果为:TF-8220210412003-1


发表评论