Mysql字符串拼接、截取、替换

血红的双手。 提交于 2019-12-02 04:59:07

一. 字符串拼接

concat('asdf',str);
说明: 拼接asdf 和 str

二. 字符串截取

  • 从左开始截取字符串
left(str, length)
说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from tablename
  • 从右开始截取字符串
right(str,length)
说明:right(被截取字段,截取长度) 例:select right(content,200) as abstract from tablename
  • 按长度截取字符串
substring(str, pos) 
substring(str, pos, length) 
说明:substring(被截取字段,从第几位开始截取) substring(被截取字段,从第几位开始截取,截取长度) 例: 
select substring(content,5) as abstract from tablename 
select substring(content,5,200) as abstract from tablename 
(注:如果位数是负数 如-5 则是从后倒数位数,到字符串结束或截取的长度)
  • 按关键字截取字符串
substring_index(str,delim,count) 
说明:substring_index(被截取字段,关键字,关键字出现的次数) 例: 
SELECT SUBSTRING_INDEX(page ,' ',1) ,page FROM tablename
(注:如果关键字出现的次数是负数 如-2 则是从后倒数,到字符串结束)
SUBSTRING(str,  INSTR(str, delim) + count)
说明: SUBSTRING(被截取的字符串, INSTR(被截取的字符串, 关键字) + 关键字长度) 例: 
select SUBSTRING(page, INSTR(page, ' number ') + 8),page from tablename
INSTR(字段名, 字符串) 
这个函数返回字符串在某一个字段的内容中的位置, 没有找到字符串返回0,否则返回位置(从1开始)
(注: 截取的是关键字之后的字符串)

三. 字符串替换

replace(str,original,replace)
说明:replace(字符串,被替换的字符串,替换成的字符串) 例: 
SELECT replace(street ,’asdf ‘,”) ,street FROM tablename 讲street中的asdf替换为空
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!