テーブル名を入れ替える
※MySQLを前提として書いています
二つのテーブル名を入れ替えたいことがたまにあるのですが、
極力ダウンタイムを短くしたいのでいろいろ調べているとひとつのクエリで書けることが分かったのでメモ。
RENAME TABLE `テーブル名①` TO `tmp_table` ,`テーブル名②` TO `テーブル名①` ,`tmp_table` TO `テーブル名②`;
RENAMEは速いので、重いテーブルでも一瞬で終わります。
単純に、複数の変更をまとめて書けるという話なので、
入れ替えに限らず複数の変更をまとめて行いたいときも同様ですね。