优化带有limit和order by的select查询



以下是我的查询:

select * from table order by timestamp desc limit 10

相比,这花费了太多的时间

select * from table limit 10

我如何优化第一个查询以接近第二个查询的性能。

:我不能控制数据库服务器,所以不能索引列来获得性能

timestamp上创建索引

Quassnoi是正确的——你需要一个时间戳的索引。

也就是说,如果您的时间戳字段合理地映射主键(例如date_created或invoice_date字段),您可以尝试以下解决方案:
select *
from (select * from table order by id desc limit 1000) as table
order by timestamp desc limit 10;

@Nishan是对的。你无能为力。如果您不需要表中的每个列,则可以通过显式地只请求所需的列来获得几毫秒的时间

相关内容

  • 没有找到相关文章

最新更新