MySQL で既存の非 TEMPORARY テーブルと同名の TEMPORARY テーブルを作成する方法
テストで TEMPORARY テーブルを使いたかったときの話。
Good
CREATE TEMPORARY TABLE tbl_name SELECT * FROM tbl_name LIMIT 0 -- テーブルだけを作成したいときに
ただし
CREATE TABLE ... SELECT は自動的にインデックスを作成しません。
http://dev.mysql.com/doc/refman/5.1/ja/create-table.html
なので、インデックスが必要な場合には別途作成する必要がある。
Bad
LIKE だと名前が重複しているぞ、というエラーになった。
CREATE TEMPORARY TABLE tbl_name LIKE tbl_name