侧边栏壁纸
博主头像
云BLOG 博主等级

行动起来,活在当下

  • 累计撰写 318 篇文章
  • 累计创建 6 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录
SQL

MYSQL 截取字符串

Administrator
2024-07-04 / 0 评论 / 0 点赞 / 0 阅读 / 0 字

1、从左开始截取字符串

# 语法
SELECT LEFT(str,len)
str:被截取的字符串
len:截取长度

# 示例
SELECT LEFT('TF-8220210412003-1', 10)
# 结果为:TF-8220210
12345678

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
12345678910111213141516171819202122232425

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

0

评论区