2016-04-25 7 views
3

Предположим, что Боб заработал 107 очков, Мэри 105 очков и Джон тоже 105 очков. Эти цифры могут меняться и не уникальны. Теперь я хочу запросить и проверить заказ, кто сверху, а кто внизу. Нужно ли индексировать эту колонку, которая содержит точки?Нужно ли индексировать столбец базы данных с номерами?

+0

«нужен» нет, но это, вероятно, хорошая идея. –

+0

Какая система баз данных вы используете? –

+0

Почему бы вам просто не создать индекс и сравнить производительность? мы не сможем сделать это за вас. Вот подсказка: http://stackoverflow.com/questions/13441334/when-to-add-an-index-on-a-sql-table-field-mysql –

ответ

1

Как правило, я рассматриваю индексирующие столбцы, которые появляются в статьях или ORDER BY часто исполняемых запросов.

4

Это зависит от используемой системы баз данных и количества (количества строк) таблицы.

Если таблица достаточно маленькая, и вы используете MSSQL, например, a table scan will be used (вся таблица будет считана в памяти), и индекс будет относительно бесполезным.

В общем, да - поле should be indexed if that is the column you'll be using to select or sort data.