您好,登錄后才能下訂單哦!
這篇文章主要介紹“sql語句中怎么截取某字段的一部分”,在日常操作中,相信很多人在sql語句中怎么截取某字段的一部分問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”sql語句中怎么截取某字段的一部分”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
在sql中,可以使用SUBSTRING語句截取某字段的一部分,語法格式為“SUBSTRING(字符串,開始位置,截取長度)”。SQL中的substring函數是用來抓出一個欄位資料中的其中一部分
本教程操作環境:windows7系統、mysql8版本、Dell G3電腦。
SUBSTRING ( expression, start, length )
參數
expression
字符串、二進制字符串、文本、圖像、列或包含列的表達式。請勿使用包含聚合函數的表達式。
start
整數或可以隱式轉換為 int 的表達式,指定子字符串的開始位置,索引是從1開始。
length
整數或可以隱式轉換為 int 的表達式,指定子字符串的長度。經測試,暫且發現只能是非負數。
返回值
1、如果 expression 是一種支持的二進制數據類型,則返回二進制數據,這種情況我們暫且不討論。
2、如果 expression 是一種支持的字符數據類型,則返回字符數據。
(1)如果 start的索引是從1開始,則從表達式的第一個字符開始進行字符串截取,從2開始就從表達式的第二個字符開始截取,以此類推。
例如:
select SUBSTRING('abcde',1,2) 返回結果 ab select SUBSTRING('abcde',2,3) 返回結果 bcd select SUBSTRING('abcde',1,0) 返回結果為空 select SUBSTRING('abcde',0,8) 返回結果為abcde,注意后面沒有空格了。
(2) 如果start的索引是從小于1(0或負數)開始,則返回長度等于從1開始,截取長度為 length - ((start - 1)的絕對值), 如果這個差為負數就返回空。
例如:下面的 || 表示絕對值計算
select SUBSTRING('abcde',0,2) 返回結果為 a , 計算公式為SUBSTRING(1,2-|2-1|) select SUBSTRING('abcde',0,-1) 返回錯誤提示“傳遞到 substring 函數的長度參數無效” select SUBSTRING('abcde',-1,2) 返回結果為空, 計算公式為SUBSTRING(1,2-|-1-1|) select SUBSTRING('abcde',-5,3) 返回結果為空, 計算公式為SUBSTRING(1,3-|-5-1|) select SUBSTRING('abcde',-1,4) 返回結果為ab, 計算公式為SUBSTRING(1,4-|-1-1|) select SUBSTRING('abcde',-2,8) 返回結果為abcde, 計算公式為SUBSTRING(1,8-|-2-1|)
到此,關于“sql語句中怎么截取某字段的一部分”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。