相方とのコラボ作業で大き目の変更が入ったので、自宅で深夜作業しています。
MySQLでデータの洗い換えとテーブルリネームをしたので、
それをメモしておきます。
■データの洗い換え(INSERT ... SELECT)
新しく作ったテーブルXYZに既存テーブルABCのデータを丸ごとコピーしたい。
面倒くさいのでSQLでやります。
INSERT INTO XYZ SELECT C1, C2, NULL, NULL, C3 FROM ABC;
※C2, C3の間にカラムを追加した想定です。
■テーブルリネーム
ALTER TABLE XYZ RENAME TO ABC;
※この例の環境では先にABCをDROPしています。
INSERT INTO ... の方は、このケースではVALUES句が要らないことを忘れていてました。
構文自体はOracleと一緒ですね。
ALTER TABLEの方もOracleと一緒ですね。
って、OracleがSQLの標準ではありませんけどね。