这时大家可以使用MySQL内置的函数SUBSTRING_INDEX()来实现字符串的拆分。其语法如下:
SUBSTRING_INDEX(str,delim,count)
其中,str代表要拆分的字符串,delim代表分割符,count为要保留的子串的个数。若count为正,则返回从左往右的前count个子串,若count为负,则返回从右往左的前|count|个子串。
举个例子,假设大家有以下字符串:
str = "hello,world,mysql"
若想将其按照”,”进行拆分并取左边两个子串,则可以使用如下SQL语句:
SELECT SUBSTRING_INDEX(str,',',2) FROM ...
结果就是:
"hello,world"
需要注意的是,若分割符在原字符串中不存在,则返回整个字符串。
最后,大家可以看一下如何将拆分后的结果进行处理。比如将其作为表中的字段来使用:
SELECT SUBSTRING_INDEX(str,',',1) AS field1, SUBSTRING_INDEX(SUBSTRING_INDEX(str,',',2),',',-1) AS field2, SUBSTRING_INDEX(str,',',-1) AS field3 FROM ...
这样大家就可以将拆分后的字符串分别作为表中的三个字段来使用了。