Как PostgreSQL обеспечивает ограничение UNIQUE / какой тип индекса он использует?

Я пытался разобраться в отношениях между уникальными и индексами в Postgres после прочтениядокументы по уникальности индекса, являющиеся подробностями реализации:

Предпочтительным способом добавления уникального ограничения в таблицу является ALTER TABLE ... ADD CONSTRAINT. Использование индексов для обеспечения уникальных ограничений может рассматриваться как деталь реализации, к которой нельзя обращаться напрямую. Однако следует помнить, что нет необходимости вручную создавать индексы для уникальных столбцов; это просто дублирует автоматически созданный индекс.

Итак, взяв документы на слово, я собираюсь просто объявить вещи уникальными и использовать неявный индекс - или - создать индекс, а не предполагать, что значения уникальны. Это ошибка?

Какой индекс я получу от уникального? Учитывая, что только btree примет ограничение уникальности, а уникальный неявно создает индекс, верно ли, что UNIQUE создает индекс btree? Я не хочу случайно запускать диапазоны по хеш-индексу.

Ответы на вопрос(1)

Ваш ответ на вопрос