MySQL中如何实现字符串分割(mysql 分割字符串)
就拿字符串”aa,bb,cc,dd”来举例,MySQL中如何实现字符串分割?
MySQL 中可以通过SUBSTRING_INDEX函数来实现字符串分割功能,它是MySQL中查询字符串比较便利的函数;SUBSTRING_INDEX函数可以提取文本中介于某两个指定字符串(包括两个指定字符串)之间的所有字符串,作用可以用以下表达式来描述:
SUBSTRING_INDEX(str,delim,count)
其中str表示原字符串,delim表示的是指定的分隔符,count可以取值为正、负和0,其中正值表示从左向右计算,负值表示从右向左计算,0表示提取两个分隔符之间的所有字符,类似于substring 函数;
回到上面的问题,我们可以使用MySQL的SUBSTRING_INDEX函数来实现字符串分割,代码如下:
select substring_index(str,’,’,1) as 值1,substring_index(substring_index(str,’,’,2),’,’,-1) as 值2,substring_index(substring_index(str,’,’,3),’,’,-1) as 值3,substring_index(substring_index(str,’,’,4),’,’,-1) as 值4 from(select “aa,bb,cc,dd” as str) as table1;
在上面的代码中,str表示的是原字符串,count取1和-1,表示分割符号处于第一个位置和最后一个位置;通过SUBSTRING_INDEX函数嵌套多次,即可把”aa,bb,cc,dd”处理为四个结果,分别是:
| 值1 | 值2 | 值3 | 值4 |
|—-|—–|—–|—–|
|aa | bb | cc | dd |
以上就是MySQL中如何实现字符串分割的方法,使用MySQL自带的字符串函数,可以比较简单地实现这种效果。