MySQL Pagination - сортировка должна кэшироваться? - PullRequest
0 голосов
/ 29 сентября 2011

Я не могу найти какую-либо информацию по этому вопросу, поэтому либо MySQL справится с этим и поэтому не является проблемой, или я использую неправильные ключевые слова:

Если кто-то хочет отсортировать результаты MySQL, должен ли я где-нибудь иметь кешированную версию сортировки или я должен делать свои запросы с предложением ORDER BY? Есть ли лучший способ сделать это, чтобы пользователи не сортировали тысячи строк при каждом изменении страницы?

Ответы [ 2 ]

1 голос
/ 29 сентября 2011

Вы должны создать индекс «с критериями сортировки» для столбца, который вы хотите отсортировать.

Это синтаксис для создания индекса MySQL:

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
    [index_type]
    ON tbl_name (index_col_name,...)
    [index_type]

index_col_name:
    col_name [(length)] [ASC | DESC]

Итак, если вы обычно получаете некоторые данные, отсортированные по some_column упорядоченному DESC, вам следует:

CREATE INDEX my_index ON my_table (some_column DESC)
1 голос
/ 29 сентября 2011

Вы должны создать индекс для столбца, который хотите упорядочить по.

См. Документацию ORDER BY Оптимизация , когда MySQL может использовать индекс дляповысить производительность запроса с помощью ORDER BY.

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