Entfernt das Erstellen einer eindeutigen Einschränkung für eine Postgres-Spalte die Notwendigkeit, sie zu indizieren?

11

Entfernt das Erstellen einer eindeutigen Einschränkung für eine Postgres-Spalte die Notwendigkeit, sie zu indizieren?

Ich gehe davon aus, dass automatisch ein Index benötigt wird, um die Einschränkung effizient aufrechtzuerhalten.

vfclists
quelle

Antworten:

13

Ja. Eine UNIQUEEinschränkung wird mithilfe eines eindeutigen Index implementiert - eines B-Tree-Index mit standardmäßig aufsteigender Sortierreihenfolge über alle beteiligten Spalten. Der Index wird automatisch erstellt und verwaltet und für alle Zwecke wie ein einfacher eindeutiger Index von Postgres verwendet.

Es ist nicht erforderlich, einen anderen (redundanten) eindeutigen Index wie diesen zu erstellen, was eine Verschwendung von Ressourcen wäre.

Ausführliche Erklärung:

Einige seltene Ausnahmen gelten für mehrspaltige Indizes mit speziellen Sortieroptionen:

Erwin Brandstetter
quelle