作者:
姓名:杨涛 职业:DBA 年龄:25 位置:中国-武汉市 个性介绍:又长了一岁 QQ:38257291 MSN:yueliangdao0608@gmail.com
http://blog.chinaunix.net/u/29134/showart_1002486.html MySQL中实现分割字符串的方法
比如现在有一字符串:1,2,44,5,666,29232
要把它按照逗号分割成:
1
2
44
5
666
29232
而且还要求它的总数。这个我以前写过。不过今天规范一下。
1、具体函数
DELIMITER $$
CREATE DEFINER=`root`@`%` FUNCTION `func_get_split_string_total`(
f_string varchar(1000),f_delimiter varchar(5)
) RETURNS int(11)BEGIN
-- Get the total number of given string.
return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));END$$
DELIMITER ;
DELIMITER $$
CREATE DEFINER=`root`@`%` FUNCTION `func_get_split_string`(
f_string varchar(1000),f_delimiter varchar(5),f_order int) RETURNS varchar(255) CHARSET utf8BEGIN
测试的存储过程: DELIMITER $$-- Get the separated number of given string.
declare result varchar(255) default '';
set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));
return result;END$$
DELIMITER ;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/729024/viewspace-564866/ ,如需转载,请注明出处,否则将追究法律责任。