mysql中截取字符串的6個(gè)函數(shù)講解
mysql截取字符串的6個(gè)函數(shù)
1、LEFT(str,len)
從左邊開(kāi)始截取,str:被截取字符串;len:截取長(zhǎng)度
示例:
2、RIGHT(str,len)
從右邊開(kāi)始截取,str:被截取字符串;len:截取長(zhǎng)度
示例:
3、SUBSTRING(str, pos, len)
str:被截取字符串;pos:截取開(kāi)始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)
示例1:
示例2:
4、SUBSTR(str, pos, len)
與SUBSTRING(str, pos, len)函數(shù)的使用一樣
str:被截取字符串;pos:截取開(kāi)始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)
示例1:
示例2:
5、MID(str, pos, len)
與SUBSTRING(str, pos, len)函數(shù)的使用一樣
str:被截取字符串;pos:截取開(kāi)始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)
示例1:
示例2:
6、SUBSTRING_INDEX(str, delim, count)
str
:被截取字符串;delim:截取數(shù)據(jù)依據(jù)的字符;count
:截取數(shù)量(count>0就從左邊開(kāi)始取,count<0就從右邊開(kāi)始?。?/li>
示例1:
示例2:
示例3:
最后再說(shuō)一個(gè)函數(shù),截取字符串一般都會(huì)用到這個(gè)函數(shù): LOCATE(substr,str)
作用: 查找字符串中指定字符的位置
substr
:搜索的字符str
:字符串
從 str 字符串 中獲得 substr 字符 的位置(沒(méi)找到返回 0)
示例1:
示例2:
示例3:
mysql截取字符串中間的值
substring_index函數(shù)
substring_index(str,delim,count)
str
: 要處理的字符串delim
: 分隔符count
: 計(jì)數(shù)
例如: str = www.51aaa.com
substring_index(str,'.',1)
結(jié)果是:www
substring_index(str,'.',2)
結(jié)果是:www.51aaa
也就是說(shuō),如果count是正數(shù),那么就是從左往右數(shù),第N個(gè)分隔符的左邊的全部?jī)?nèi)容
substring_index(str,'.',-1)
結(jié)果是:com
substring_index(str,'.',-2)
結(jié)果是:51aaa.com
相反,如果是負(fù)數(shù),那么就是從右邊開(kāi)始數(shù),第N個(gè)分隔符右邊的所有內(nèi)容
那么,如果我要中間的的aaa怎么辦?
很簡(jiǎn)單的,兩個(gè)方向:從右數(shù)第二個(gè)分隔符的右邊全部,再?gòu)淖髷?shù)的第一個(gè)分隔符的左邊:
先獲取
substring_index(remarks,'1',-1) as mm
結(jié)果是: aaa.com
然后是
substring_index('aaa.com','.',1) as mm
結(jié)果是: aaa.com
合起來(lái)就是:
substring_index(substring_index(str,'1',-1),'.',1)
應(yīng)用
數(shù)據(jù)表t_record的字段remark的值為字符串 1#56次
這里截取#和次之間的字符串,即獲取數(shù)字56
下面sql的-1表示從重右側(cè)數(shù)第一個(gè)#,1表示從左側(cè)數(shù)起第一個(gè)次
select substring_index(substring_index(remarks,'#',-1),'次',1) from t_record
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Win10安裝MySQL5.7.18winX64 啟動(dòng)服務(wù)器失敗并且沒(méi)有錯(cuò)誤提示
這篇文章主要介紹了Win10安裝MySQL5.7.18winX64 啟動(dòng)服務(wù)器失敗并且沒(méi)有錯(cuò)誤提示,需要的朋友可以參考下2017-06-06win11設(shè)置mysql開(kāi)機(jī)自啟的實(shí)現(xiàn)方法
本文主要介紹了win11設(shè)置mysql開(kāi)機(jī)自啟的實(shí)現(xiàn)方法,要通過(guò)命令行方式設(shè)置,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03Mysql 直接查詢(xún)存儲(chǔ)的Json字符串中的數(shù)據(jù)
本文主要介紹了Mysql直接查詢(xún)存儲(chǔ)的Json字符串中的數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02driver-class-name:?com.mysql.jdbc.Driver爆紅的問(wèn)題解決
在springboot項(xiàng)目工程中想要進(jìn)行數(shù)據(jù)庫(kù)配置,driver-class-name:?com.mysql.cj.jdbc.Driver始終報(bào)錯(cuò),本文就來(lái)介紹一下如何解決,感興趣的可以了解一下2024-07-07mysql like 特殊字符搜索的實(shí)現(xiàn)
在MySQL中,LIKE操作符用于在查詢(xún)數(shù)據(jù)時(shí)進(jìn)行模糊匹配,本文主要介紹了mysql like 特殊字符搜索的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09MySQL之DATE_ADD()和DATE_SUB()函數(shù)的使用方式
這篇文章主要介紹了MySQL之DATE_ADD()和DATE_SUB()函數(shù)的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04