web-dev-qa-db-ja.com

Postgresカラムに一意の制約を作成すると、インデックスを付ける必要がなくなりますか?

Postgresカラムに一意の制約を作成すると、インデックスを付ける必要がなくなりますか?

制約を効率的に維持するには、インデックスが自動的に必要になると思います。

11
vfclists

はい。 UNIQUE制約 は、一意のインデックスを使用して実装されます-関係するすべての列に対してデフォルトの昇順のソート順を持つBツリーインデックス。インデックスは自動的に作成および保守され、Postgresによるプレーンなユニークインデックスのようなあらゆる目的で使用されます。

そのような別の(冗長な)一意のインデックスを作成する必要はありません。これはリソースの無駄になります。

詳細な説明:

いくつかのまれな例外が、特別なソートオプションを持つマルチカラムインデックスに適用されます。

13