FirebirdSQL logo
 TABLEVIEW 

Вычисляемые индексы или индексы по выражению

При создании индекса вместо одного или нескольких столбцов вы также можете указать одно выражение, используя предложение COMPUTED BY.Такой индекс называется вычисляемым или индексом по выражению.Вычисляемые индексы используются в запросах, в которых условие в предложениях WHERE, ORDER BY или GROUP BYв точности совпадает с выражением в определении индекса.Выражение в вычисляемом индексе может использовать несколько столбцов таблицы.

Частичные индексы

Если при создании индекса вы можете указать необязательное предложение WHERE, которое определяет условие поиска,ограничивающее подмножество записей таблицы для индексирования. Такие индексы называются частичными индексами.Условие поиска должно содержать один или несколько столбцов таблицы.

Определение частичного индекса может включать спецификацию UNIQUE. В этом случае каждый ключ в индексе должен быть уникальным. Это позволяет обеспечить уникальность для некоторого подмножества строк таблицы.

Частичный индекс можно использовать только в следующих случаях:

  • условие WHERE включает точно такое же логическое выражение, как и определенное для индекса;

  • условие поиска, определенное для индекса, содержит логические выражения, объединенные OR, и одно из них явно включено в условие WHERE;

  • условие поиска, определенное для индекса, указывает IS NOT NULL, а условие WHERE включает выражение для того же поля, которое, как известно, игнорирует NULL.