Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kopiere ich eine Zeile und füge sie in dieselbe Tabelle mit einem Autoincrement-Feld in MySQL ein?

Verwenden Sie INSERT ... SELECT :

insert into your_table (c1, c2, ...)
select c1, c2, ...
from your_table
where id = 1

wobei c1, c2, ... sind alle Spalten außer id . Wenn Sie explizit mit einer id einfügen möchten von 2 dann fügen Sie das in Ihre INSERT-Spaltenliste und Ihr SELECT:

ein
insert into your_table (id, c1, c2, ...)
select 2, c1, c2, ...
from your_table
where id = 1

Sie müssen sich um eine mögliche doppelte id kümmern von 2 im zweiten Fall natürlich.