insert into user
(account_id, name, e_mail_addr)
select account_id, name, e_mail_addr
from user
where account_id='1';
id = id +1 で行をコピーして 100 回ループする方法。これは、2 から 100 までの ID を持つ 100 行を作成することを意味します。これを phpmyadmin で使用しています。
insert into user
(account_id, name, e_mail_addr)
select account_id, name, e_mail_addr
from user
where account_id='1';
id = id +1 で行をコピーして 100 回ループする方法。これは、2 から 100 までの ID を持つ 100 行を作成することを意味します。これを phpmyadmin で使用しています。
SQL プロシージャ:
drop procedure if exists user_clone;
delimiter #
create procedure user_clone()
begin
declare u_max int unsigned default 100;
declare u_counter int unsigned default 0;
start transaction;
while u_counter < u_max do
INSERT INTO (name, e_mail_addr)
SELECT name, e_mail_addr
FROM user
WHERE account_id = 1;
set u_counter=u_counter+1;
end while;
commit;
end #
delimiter ;
call user_clone();
drop procedure user_clone;