2011-09-28 71 views
0

我找不到这方面的消息,所以无论是MySQL的处理这个问题,因此是一个非问题或我使用了错误的关键字:MySQL分页 - 应该排序缓存?

如果有人想MySQL的结果进行排序,我应该有一个缓存某种地方排序的版本,还是应该使用ORDER BY子句进行查询?有没有更好的方法来做到这一点,以便用户每次更改页面时都不会对数千行进行排序?

回答

1

您应该在要排序的列上创建一个带有排序条件的索引。

这是创建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)