2011-02-10 2 views

答えて

0

このデザインでは何かが深刻に間違っていました。一度に600テーブルにアクセスするということは、ディスク上の1800ものファイルにアクセスすることを意味します。代わりにこのデータを分割する必要があります。

私は、ストアドプロシージャまたは外部アプリケーションを使用して複数のUNIONクエリステートメントを作成する必要があると思います。それでも、私はUNIONにマージされたテーブルが32個に制限されていることを覚えているようです。

0

データを必要とするテーブルのリストを取得し(__のようなテーブルを表示する)、mysql dumpを使用してそのリストを渡すことができます。

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

あなたはSQLクエリからそれを得ると判断された場合は、マクロを使って適切なSQLクエリを生成し、一度にすべてを実行する可能性があります。例えばテーブルのリストを取得し、改行を ";(改行)select * from"に置き換え、すべてのクエリを実行します。 (emacsのmysqlモードは、この超簡単になります)。

コメント欄には#制限のために1つのクエリでそれを行うことはできません。

関連する問題