使用MySQL实现逗号分隔字符串的拆分可以使用FIND_IN_SET函数来实现:
FIND_IN_SET函数可以在逗号分隔的字符串中查找指定的值,并返回其位置。结合SUBSTRING函数,可以实现字符串的拆分。
示例代码如下:
SELECT SUBSTRING('字符串1,字符串2,字符串3', 1, FIND_IN_SET(',', '字符串1,字符串2,字符串3') - 1) AS part1,
SUBSTRING('字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1, FIND_IN_SET(',', '字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1) - FIND_IN_SET(',', '字符串1,字符串2,字符串3') - 1) AS part2,
SUBSTRING('字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1) + 1) AS part3;
解释:
- SUBSTRING('字符串1,字符串2,字符串3', 1, FIND_IN_SET(',', '字符串1,字符串2,字符串3') - 1):返回第一个逗号之前的部分,即字符串1。
- SUBSTRING('字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1, FIND_IN_SET(',', '字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1) - FIND_IN_SET(',', '字符串1,字符串2,字符串3') - 1):返回第一个逗号和第二个逗号之间的部分,即字符串2。
- SUBSTRING('字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3', FIND_IN_SET(',', '字符串1,字符串2,字符串3') + 1) + 1):返回第一个逗号和第三个逗号之间的部分,即字符串3。
上一篇
如何用mysql查找前10条记录下一篇
如何使用mysql实现定时任务2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09
2023-12-09