1

選択クエリを実行する場合、テーブルの自己結合のパフォーマンスは、2 つの異なるテーブル間の結合と比較してどうですか? たとえば、tableA と tableB が完全に重複している場合 (構造とデータの両方)、次のようにすることが望ましいでしょうか。

select ... from tableA a inner join tableA b...、 また

select ... from tableA a inner join tableB b...

おそらくそれは簡単な答えではないでしょう。その場合、このトピックに関する参考文献はありますか?

MySqlを使用しています。

ありがとう!

4

1 に答える 1

2

テーブル B がテーブル A の正確なコピーであり、必要なすべてのインデックスが作成されていると仮定すると、テーブル A の自己結合は、テーブル A のデータとそのインデックスをキャッシュから再利用できるという理由だけで、B と A の結合よりも少し高速になるはずです。自己結合を実行するため (これにより、暗黙的に自己結合用により多くのメモリが与えられ、より多くの行が作業バッファーに収まるようになります)。

表 B が同じでない場合、比較することはできません。

于 2013-01-15T11:06:40.263 に答える