Если я создаю индекс Postgres, в чем разница между ASC и DESC? - PullRequest
6 голосов
/ 26 мая 2011

Означает ли это, что ASC лучше для таких запросов, как

PRICE> 40

, а DESC лучше для таких запросов, как

PRICE <40? </p>

Ответы [ 3 ]

8 голосов
/ 26 мая 2011

Условие where может быть не затронуто, но определенно затронуто ORDER BY

Документация для заказа индекса PostgreSQL

6 голосов
/ 26 мая 2011

PostgreSQL (или любой другой движок БД в этом отношении) будет хорошо читать ваш индекс любым способом.Вы получите сканирование индекса или обратное сканирование индекса.

Проблема заключается в том, что у вас есть сканирование нескольких столбцов.В этом случае:

index on (foo, bar)

будет работать для foo asc, bar asc, а также foo desc, bar desc.В некоторых базах данных это не будет работать на foo desc, bar asc (обратное сканирование foo, игнорирует bar) или foo asc, bar desc (сканирование foo, игнорирует bar).

0 голосов
/ 26 мая 2011

По убыванию может дать вам импульс, если столбцы содержат последовательные данные, на которые ссылаются «последние» значения - столбцы даты, столбцы идентификаторов и т. Д.

Вообще говоря, таблицы / индексы должны быть действительно большими, чтобы это имело значение.

Это не повлияет на то, что возвращается, просто как.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...