溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql中截取字符串的函數(shù)有哪些

發(fā)布時(shí)間:2022-08-29 16:47:25 來源:億速云 閱讀:321 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“mysql中截取字符串的函數(shù)有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

mysql截取字符串的6個(gè)函數(shù)

1、LEFT(str,len)

從左邊開始截取,str:被截取字符串;len:截取長(zhǎng)度

示例:

mysql中截取字符串的函數(shù)有哪些

2、RIGHT(str,len)

從右邊開始截取,str:被截取字符串;len:截取長(zhǎng)度

示例:

mysql中截取字符串的函數(shù)有哪些

3、SUBSTRING(str, pos, len)

str:被截取字符串;pos:截取開始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)

示例1:

mysql中截取字符串的函數(shù)有哪些

示例2:

mysql中截取字符串的函數(shù)有哪些

4、SUBSTR(str, pos, len) 

與SUBSTRING(str, pos, len)函數(shù)的使用一樣

str:被截取字符串;pos:截取開始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)

示例1:

mysql中截取字符串的函數(shù)有哪些

示例2:

mysql中截取字符串的函數(shù)有哪些

5、MID(str, pos, len) 

與SUBSTRING(str, pos, len)函數(shù)的使用一樣

str:被截取字符串;pos:截取開始位置;len:截取長(zhǎng)度(非必填:不填截取到最大長(zhǎng)度)

示例1:

mysql中截取字符串的函數(shù)有哪些

示例2:

mysql中截取字符串的函數(shù)有哪些

 6、SUBSTRING_INDEX(str, delim, count)

  • str:被截取字符串;delim:截取數(shù)據(jù)依據(jù)的字符;

  • count截取數(shù)量(count>0就從左邊開始取,count<0就從右邊開始取)

示例1:

mysql中截取字符串的函數(shù)有哪些

示例2:

mysql中截取字符串的函數(shù)有哪些

示例3:

mysql中截取字符串的函數(shù)有哪些

最后再說一個(gè)函數(shù),截取字符串一般都會(huì)用到這個(gè)函數(shù): LOCATE(substr,str)

作用: 查找字符串中指定字符的位置

  • substr搜索的字符

  • str字符串

str 字符串 中獲得 substr 字符 的位置(沒找到返回 0)

示例1:

mysql中截取字符串的函數(shù)有哪些

示例2:

mysql中截取字符串的函數(shù)有哪些

示例3:

mysql中截取字符串的函數(shù)有哪些

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

也就是說,如果count是正數(shù),那么就是從左往右數(shù),第N個(gè)分隔符的左邊的全部?jī)?nèi)容

substring_index(str,'.',-1)

結(jié)果是:com

substring_index(str,'.',-2)

結(jié)果是:51aaa.com

相反,如果是負(fù)數(shù),那么就是從右邊開始數(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

合起來就是:

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

“mysql中截取字符串的函數(shù)有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI