Документация по PostgreSQL 9.4.1 | |||
---|---|---|---|
Пред. | Уровень выше | Глава 11. Индексы | След. |
11.10. Индексы и правила сортировки
Один индекс может поддерживать только одно правило сортировки для индексируемой колонки. Поэтому при необходимости применять разные правила сортировки могут потребоваться несколько индексов.
Рассмотрим следующие операторы:
CREATE TABLE test1c ( id integer, content varchar COLLATE "x" ); CREATE INDEX test1c_content_index ON test1c (content);
Этот индекс автоматически использует правило сортировки нижележащей колонки. И запрос вида
SELECT * FROM test1c WHERE content > константа;
сможет использовать этот индекс, так как при сравнении по умолчанию будет действовать правило сортировки колонки. Однако этот индекс не поможет ускорить запросы с каким-либо другим правилом сортировки. Поэтому, если интерес представляют также и запросы вроде
SELECT * FROM test1c WHERE content > константа COLLATE "y";
для них можно создать дополнительный индекс, поддерживающий правило сортировки "y", примерно так:
CREATE INDEX test1c_content_y_index ON test1c (content COLLATE "y");
Пред. | Начало | След. |
Семейства и классы операторов | Уровень выше | Контроль использования индексов |