MySQL中有許多用于字符串處理的內(nèi)置函數(shù),其中之一就是substr函數(shù)。
該函數(shù)可以截取一個(gè)字符串中從指定位置開始(包含該位置)的指定長度的部分。
SELECT SUBSTR('Hello, World!', 1, 5); --結(jié)果為:Hello
在這個(gè)例子中,我們選擇了從字符串“ Hello,World! ”中的第一個(gè)字符(包括該字符)開始的前五個(gè)字符。
該函數(shù)的語法如下:
SUBSTR(string,start,length)
其中,string是要從中截取子字符串的字符串,start是指定子字符串的開始位置(從1開始),length是指定子字符串的長度。
如果省略length,則從start位置開始截取到字符串的末尾。 如果start為負(fù)數(shù),則start的絕對值將被視為從字符串末尾開始的位置。 如果start超出了字符串的長度,則返回一個(gè)空字符串。
例如:
SELECT SUBSTR('Hello, World!', -6, 5); --結(jié)果為:World
在這個(gè)例子中,我們選擇了字符串“ Hello,World! ”的倒數(shù)第六個(gè)字符作為子字符串的開始位置,并截取了其后面的五個(gè)字符。
在實(shí)際的SQL查詢中,substr函數(shù)可以用于許多不同的用例,例如從電子郵件地址中提取用戶名,獲取商品描述中的第一個(gè)單詞等等。