begin
declare i int default 0
declare lfstr varchar(200) default ' '
declare instr varchar(50)
while lfstr <>data do
set i=i+1
set lfstr=substring_index(data,deli,i)
set instr=substring_index(lfstr,deli,-1)
insert into tb1char value(instr)
end while
end
呵呵,,终于写出来了。。tb1char是我建的一个表,你可以换成你自己的表。
输入参数有data 就是你要插入的字符串,deli 是这个字符串的分隔符。
建立tb1char 表:
create table tb1char(data varchar(100))
调用上述存储过程:
call split_str("a, 3,100,qwe",",")
..还有就是这里面用到了mysql里面的substring_index函数。。你可以去查一下这个函数。
update 表名 set attr3= replace(attr3,",","")update 表名 set attr4= replace(attr4,",","")
update 表名 set attr5= replace(attr5,",","")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)