利用MSSQL函數(shù)MID獲取子字符串(mssql mid())
當前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
Microsoft SQL Server 中提供了一些眾多的函數(shù),其中MID函數(shù)是SQL Server中最常用的字符串函數(shù)之一,用于提取子字符串。MID()的一般形式為MID (string,start,length),其中string是一個字符串,start表示開始位置,length表示長度。例如,MID(’Hello World’,’6′,’5′)的結(jié)果為“World”,即從’Hello World’中第6個字符開始,抓取長度為5的子字符串。 使用MID()函數(shù)可以根據(jù)某個指定的關(guān)鍵字抓取相應(yīng)的子字符串,例如抓取一個字符串“index=123&name=Harry”中name對應(yīng)的內(nèi)容“Harry”,首先通過CHARINDEX()函數(shù)定位到“name”后面第一個字符’H’位置,然后使用MID()函數(shù)從這個位置抓取長度為5的子字符串,代碼如下: select MID(‘index=123&name=Harry’,CHARINDEX(‘name’, ‘index=123&name=Harry’)+5,5) AS NAME 最后,MID()函數(shù)還可以用于抓取特定類別的數(shù)據(jù),我們經(jīng)常會遇到一些逗號分隔的字符串,可以使用如下代碼獲取其中指定位置的值: declare @str nvarchar(1024); set @str='Harry,Jenny,David,Emma,James'; select mid(@str,charindex(',',@str,charindex(',',@str)+1)+1, charindex(',',@str,charindex(',',@str,charindex(',',@str)+1)+1) - charindex(',',@str,charindex(',',@str)+1)-1) 上面的代碼用來抓取@str中第3個元素“David”,當然,也可以只寫成MID()函數(shù),就算字符串變長了,它也能自動計算長度。 總之,MID()函數(shù)可以幫助我們用簡單的代碼方便的從字符串中抓取字串,大大提高了工作效率。 該文章在 2023/8/15 15:35:36 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |