プライマリ インデックスは、固有プライマリ インデックス(UPI)または非固有プライマリ インデックス(NUPI)として定義することができます。どちらとして定義するかは、インデックス付けされる列セット内で重複値が許可されるかどうかによります。
UPIはデータの配分を最適化し、通常、テーブルのプライマリ キーとして割り当てられます。しかし、プライマリ キーは必ずしもいつもプライマリ インデックスの最良の候補というわけではありません。
テーブルがNUPIを持つように設計されているときは、テーブルのプライマリ キーや他の代替キーに対して、固有性制約(PRIMARY KEYやUNIQUE等)を割り当てることを検討してください。これによって、固有性が守られるのと同時にアプリケーションの検索機能が強化され、プライマリ キーまたは他の代替キーが選択基準や結合基準として高い頻度で利用されることになります。