用存储过程将’1,2,3,4,5’遍历输出
为了完成上述功能,在mysql中提供了一些字符串操作的函数,其中SUBSTRING_INDEX(str, delim, count)
str: 要处理的字符串
delim: 分割符
count: 计数 如果为正数,则从左开始数,如果为负数,则从右开始数
例:
str = ‘‘1,2,3,4,5’’;
SELECT substring_index(’‘1,2,3,4,5’’,’.’, 1); #1
SELECT substring_index(’‘1,2,3,4,5’’,’.’, 2); #1,2
SELECT substring_index(’‘1,2,3,4,5’’,’,’, -1); #5
SELECT substring_index(’‘1,2,3,4,5’’,’.’, -2); #4,5
SELECT substring_index(substring_index(’‘1,2,3,4,5’’,’.’, -2), ‘.’, 1); #4
则要得到第几个数就是,就是用substring_index正切换后再-1切割
SELECT substring_index(substring_index(‘1,2,3,4,5’,’,’, index), ‘,’, -1)
再用循环遍历输出即可

其中遍历切割字符的个数=总长度-分隔符长度
LENGTH(str) - LENGTH(REPLACE(str, f, ‘’)) + 1


补充:substring_index参数超出长度,返回的是字符串整体
MySQL遍历字符串元素
本文介绍如何使用MySQL的SUBSTRING_INDEX函数来遍历一个由逗号分隔的字符串中的各个元素,并通过示例展示了如何利用该函数实现字符串的逐个元素输出。
1776

被折叠的 条评论
为什么被折叠?



