information_schemaを使用できます テーブル名を検索し、結果を一連のDROPとしてフォーマットすることもできます ステートメント。
SELECT CONCAT('DROP TABLE ', TABLE_NAME, '; ')
FROM information_schema.tables
WHERE table_schema = DATABASE() AND table_name NOT IN ('foo', 'bar', 'baz');
(DATABASE() 関数は現在のuseを返します 'dデータベース。)
PREPAREを使用する およびEXECUTE 、コピー&ペーストを回避することもでき、(MySQL 5.0.13以降では)これを行うためのストアドプロシージャを作成します。