Частичные индексы
Если при создании индекса вы можете указать необязательное предложение WHERE
, которое определяет условие поиска,ограничивающее подмножество записей таблицы для индексирования. Такие индексы называются частичными индексами.Условие поиска должно содержать один или несколько столбцов таблицы.
Определение частичного индекса может включать спецификацию UNIQUE
. В этом случае каждый ключ в индексе должен быть уникальным. Это позволяет обеспечить уникальность для некоторого подмножества строк таблицы.
Частичный индекс можно использовать только в следующих случаях:
-
условие
WHERE
включает точно такое же логическое выражение, как и определенное для индекса; -
условие поиска, определенное для индекса, содержит логические выражения, объединенные
OR
, и одно из них явно включено в условиеWHERE
; -
условие поиска, определенное для индекса, указывает
IS NOT NULL
, а условиеWHERE
включает выражение для того же поля, которое, как известно, игнорируетNULL
.