MySQL で、自動増分 を使用して行をコピーしcolumn ID=1
、同じテーブルに新しい行としてデータを挿入しようcolumn ID=2
としています。
これを 1 つのクエリで実行するにはどうすればよいですか?
ベストアンサー1
使用INSERT ... SELECT
:
insert into your_table (c1, c2, ...)
select c1, c2, ...
from your_table
where id = 1
c1, c2, ...
を除くすべての列はどこにありますかid
。 2 の を明示的に挿入する場合はid
、それを INSERT 列リストと SELECT に含めます。
insert into your_table (id, c1, c2, ...)
select 2, c1, c2, ...
from your_table
where id = 1
id
もちろん、2 番目のケースでは 2 が重複する可能性があることに注意する必要があります。