日期:2014-05-20  浏览次数:20710 次

mysql中怎么拆分以逗号隔开的字符串?
表中有个varchar类型的字段,存的是'1,2,32,123'样的字符串,请问怎么以逗号把他们拆分出来啊?

------解决方案--------------------
set @id = "212,45,378";
DROP TEMPORARY TABLE IF EXISTS tem_result;
CREATE TEMPORARY TABLE tem_result(id BIGINT(20) NOT NULL); 
SET cnt = 1+(LENGTH(@id) - LENGTH(REPLACE(@id,',','')));
WHILE i < cnt DO
SET i = i + 1;
SET result = REVERSE(SUBSTRING_INDEX(REVERSE(SUBSTRING_INDEX(@id,',',i)),',',1));
INSERT INTO tem_result(cid) VALUES (result);
END WHILE;

未定义的变量自己定义下,结果在临时表中
------解决方案--------------------
mysql貌似没有。
自己写吧,给你参考。
http://zy116494718.iteye.com/blog/1156863