-1

3 つの列を持つテーブルがあり、いずれも主キーではなく、3 つの列の組み合わせが一意であるテーブルに 200 万のレコードがあるとします。

列ごとにインデックスを作成するか、3 つの列すべてのインデックスをマージする方がよいでしょうか?

4

1 に答える 1

0

組み合わせが一意である必要がある場合は、3 つの列に対して一意のインデックスを設定します。次に、mysql-server は、最初の列の後に同じ 3 つの列を持つすべてのデータセットを拒否します。

さらに、インデックス付きの列に対して検索を実行すると、検索が高速になります。

最後になりましたが、インデックス付きの列の選択ステートメントのみを実行する場合、mysql-server はテーブル自体を読み取る必要はなく、既にすべての情報が含まれているため、インデックスのみを読み取る必要があります。それが最速の方法でしょう。

于 2013-08-09T09:33:26.240 に答える