すぐ忘れるので備忘録として。
データベースを扱っていると、既にあるテーブルの構造をコピーして新しいテーブルを作りたいときがあるかと思います。
今回はその方法について。
なお、参考にさせていただいた記事はこちらから。
MySQLテーブルをそのままコピーする – Qiita
https://qiita.com/ibarakids/items/bad052c55cfe6d85903d
SQL文はこちら。
CREATE TABLE [新しいテーブル名] LIKE [コピー元のテーブル名];
この分を実行すると、LIKE の後ろで指定した、コピー元のテーブルの構造をコピーして、新しいテーブルを作ることができます。
なお、データまでは引き継がれないので、作成されたテーブルは空です。
そのため、データもコピーしたい場合は、テーブルをコピーして作成した後、下記のSQL文を実行してください。
INSERT INTO [新しいテーブル名] SELECT * FROM [コピー元のテーブル名];
これで、データのコピーが完了します。
INSERT文と SELECT文を一緒に使ったことがないので、この使い方は新鮮に感じますね。
以上、テーブルを別名で複製する方法でした。
使用頻度が低いのですぐ忘れる自分のためにまとめた記事ですが、同じことをやりたい方は参考にしていただければ。