您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

mysql:拆分varchar值并插入部分

mysql:拆分varchar值并插入部分

这是它的工作方式,包括测试数据等。

考虑一下,这只是一个 答案。显然要走的路是存储过程或函数或其他任何东西。

drop table testvar;
create table testvar (id int, codes varchar(20));
insert into testvar values (1, '|1|2|3|4'), (2, '|5|6|7|8');



drop table if exists inserttest;
create table inserttest (id int, code int);

select @sql:=left(concat('insert into inserttest values ', group_concat( '(', id, ',', replace(right(codes, length(codes) - 1), '|', concat( '),(', id, ',' )), '),' separator '')), length(concat('insert into inserttest values ', group_concat( '(', id, ',', replace(right(codes, length(codes) - 1), '|', concat( '),(', id, ',' )), '),' separator ''))) -1)
from testvar;

prepare stmt1 from @sql;
execute stmt1;

select * from inserttest;
MySQL 2022/1/1 18:52:29 有355人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶