CREATE FUNCTION splitString(string VARCHAR(100),sign VARCHAR(10))
RETURNS int(10)
BEGIN
declare cnt int default 0;
declare i int default 0;
set cnt = 1+(length(string) - length(replace(string,sign,'')));
while i < cnt
do
set i = i+1 ;
INSERT INTO test(content) VALUES(reverse(substring_index(reverse(substring_index(string,sign,i)),sign,1)));
end while;
RETURN cnt;
END
用法就是
select splitString("a,b,c,d,e",",")