2つ以上の列の複合主キーを作成するとき。 PRIMARY KEY(col1, col2, col3)
;システムは各列を個別にINDEX
しますか?
私がこの質問をしている理由は、UNIQUE INDEX (col1, col2, col3)
を使用する場合、最初の列に対してのみINDEX
として機能し、他の列に対しては追加のINDEX
sを作成する必要があるためです列。それが複合主キーにも当てはまるかどうかを知りたいです。
複合プライマリインデックスは常に、col1、col2、col3値の組み合わせが一意であることを保証します。インデックスの目的が値が一意であることを保証することである場合、あなたはそれを達成しているでしょう
複合インデックスは、列col1、col2、col3の任意の組み合わせでのインデックス一致も提供します
他の列を使用せずにいずれかの列を使用して結合またはフィルタリングする場合は、col2とcol3に個別のインデックスを作成します。
私は常に(ビジネス関連のない)数値の主キーと、必要に応じて複合主キーよりも一意のインデックスを好みます。