За съжаление, mysql не позволява на функциите да връщат масиви или таблици (за които знам), така че трябва да направите това малко хакерски.
Ето примерна съхранена процедура:
DELIMITER $$
create function splitter_count (str varchar(200), delim char(1)) returns int
return (length(replace(str, delim, concat(delim, ' '))) - length(str)) $$
CREATE PROCEDURE tokenize (str varchar(200), delim char(1))
BEGIN
DECLARE i INT DEFAULT 0;
create table tokens(val varchar(50));
WHILE i <= splitter_count(str, delim) DO
insert into tokens(val) select(substring_index(SUBSTRING_INDEX(str, delim, i+1), delim, -1));
SET i = i + 1;
END WHILE;
END $$
DELIMITER ;
Това ще токенизира вашия низ и ще вмъкне стойностите в таблица, наречена "токени", по един токен на ред. Трябва да можете да го модифицирате, за да направите нещо полезно доста лесно. Също така може да искате да увеличите дължината на въвеждане от 200.