MySQL中的substring函數(shù),是用來(lái)截取字符串的,在許多情況下都非常有用。
SELECT SUBSTRING('hello world', 1, 5); -- 輸出"hello" SELECT SUBSTRING('hello world', 7); -- 輸出"world"
上面的代碼中,第一個(gè)例子使用了三個(gè)參數(shù),分別是原始字符串、截取起始位置和截取長(zhǎng)度。它會(huì)返回一個(gè)新的字符串,從起始位置開(kāi)始,連續(xù)截取指定長(zhǎng)度的字符。
第二個(gè)例子則只傳遞了兩個(gè)參數(shù),它會(huì)返回一個(gè)新的字符串,從起始位置一直截取到原始字符串的結(jié)尾。
SELECT SUBSTRING_INDEX('www.example.com', '.', 2); -- 輸出"www.example" SELECT SUBSTRING_INDEX('www.example.com', '.', -2); -- 輸出"example.com"
在某些情況下,你可能會(huì)想要截取字符串中的某個(gè)部分,直到某個(gè)特定的分隔符。為此,MySQL提供了substring_index函數(shù),可以操作字符串及一個(gè)自定義的分隔符。
第一個(gè)例子中的代碼將返回子字符串 "www.example",因?yàn)樗厝×嗽址星皟蓚€(gè)出現(xiàn)的 "." 號(hào)之前的所有字符。第二個(gè)例子則返回子字符串 "example.com",因?yàn)樗褂昧素?fù)數(shù)索引。
這就是MySQL中使用substring截取字符串的方式。在合適的情況下,它可以幫助我們快速而靈活地操作字符串。