1、此函数用于计算按照切分字符所产生的数组长度当然可以不用单独写函数,直接在自定义函数中使用 length(str)-length(replace(str, splitstr, ''))+1即为长度
delimiter $$
drop function if exists 'string_length'$$
create definer=`root`@`%` function`string_length`(str varchar(200), splitstr varchar(5)) returns INT(11)
begin
return length(str)-length(replace(str, splitstr, ''))+1;
end$$
delimiter ;
参数说明:比较简单,str 需要分割的字符串,splitstr分隔符",".
2、按照切分的数组,取出每一个字符串
delimiter $$
drop function if exists `func_get_split_string`$$
create definer =`root`@`localhost` function`func_get_split_string`(f_string varchar(1000),f_delimiter varchar(5),f_order INT) returns varchar(1000) charset utf8
begin
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;
参数说明:最后的f_order为第几个,默认第一个为1,而不是常规的0开始,此处需要注意,f_string为需要切割的字符串,f_delimiter为分隔符,一般为“,”.
以上,祝您工作愉快! 读书笔记---