mysql 优化order by
MySQL 中有两种排序方式: 1. 通过有序索引扫描直接返回有序数据 ,这种方式在使用explain分析查询的时候显示为using index, 不需要额外的排序,操作效率较高。 mysql> explain select start_time from warning_repaired order by start_time desc\G; *************************** 1. row *************************** id: 1 select_type: SIMPLE table: warning_repaired type: index possible_keys: NULL key: start_time key_len: 5 ref: NULL rows: 499471 Extra: Using index 1 row in set (0.00 sec) 2. 通过对返回数据进行排序,也就是通常所说的filesort排序 ,所有不是通过索引直接返回排序结果的排序 都叫filesort排序。 filesort并不代表通过磁盘文件进行排序,而只是进行了一个排序操作,至于排序操作 是否使用了磁盘文件或者临时表等,则取决于MySQL服务器对排序参数的设置和需要排序数据的大小。 mysql> explain select * from