共計 1402 個字符,預計需要花費 4 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章主要介紹“sql 語句中怎么截取某字段的一部分”,在日常操作中,相信很多人在 sql 語句中怎么截取某字段的一部分問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”sql 語句中怎么截取某字段的一部分”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學習吧!
在 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 語句中怎么截取某字段的一部分”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注丸趣 TV 網站,丸趣 TV 小編會繼續努力為大家帶來更多實用的文章!
向 AI 問一下細節