简而言之,场景:一个拥有超过1600万条记录[2GB大小]的表。使用ORDER BY * primary_key *时,SELECT的LIMIT偏移量越高,查询的速度就越慢
所以
SELECT * FROM large ORDER BY `id` LIMIT 0, 30
花费不到
SELECT * FROM large ORDER BY `id` LIMIT 10000, 30
那只能订购30条记录,而且无论如何都一样。因此,这不是ORDER BY的开销。
现在,当获取最新的30行时,大约需要180秒。如何优化该简单查询?