2

データベースの更新のために、同じ MySQL データベース内の 1 つのテーブルから別のテーブルに 5 つの列をコピーしたいと考えています。両方のテーブルには同じ量の行があり、各行には ID があり、ID は両方のテーブルで同じです (したがって、これらのテーブルをマージしたいと思います)。私のアプローチは現在、次の更新ステートメントを介してこれを行っています。

update table_a, table_b set
   table_a.column1 = table_b.column1,
   table_a.column2 = table_b.column2,
   ...
   where table_a.id = table_b.id

大きなテーブルでは時間がかかるため、これを行うためのより高速な方法があるかどうか疑問に思っています。

助けてくれてありがとう、マイケル

4

1 に答える 1

1

それがどれほど大きな違いを生むかはわかりませんが、代わりにinsert-select [On duplicate key ...]を試すことができます。 http://dev.mysql.com/doc/refman/5.1/en/insert-select.html

一般に、データの書き込みは遅いプロセスです。ハードドライブ自体がボトルネックです。

于 2012-12-18T10:22:45.467 に答える