MySQL:大数据库 - 请求 0,10 限制...资源?

MySQL: Big Database - request 0,10 Limit... resources?

我想知道,从数据库 (MySQL) 中获取最后 10 个新条目 的最佳方法是什么?当然,目前我正在使用:

(SELECT whatever FROM whatever ORDER BY id (or whatever) DESC LIMIT 0,10)

但是,如果您有数百个或数千个条目,会发生什么情况? MySQL 是否仍然 select 而只是 "read" 只有最后十个条目 - 并且不会丢失速度和时间来爬过所有其他条目?

为了我的目的,我总是只需要数据库中的最后 10~20 个条目,其余的和旧的更多用于存档。每个 entry/record 都有一个自动增量 ID,我用它来通过 ORDER 和 SELECT 显示我的条目(使用 PHP ~ PDO 和准备好的语句),我喜欢 minimal 和解决方案,那不需要很多资源。

够好还是有更好的方法? 感谢您的想法和解释! :)

无论数据库大小如何,只要您在相关列上有一个索引(在本例中 id,我假设它是一个主键),您的解决方案将始终快速运行。

原因是索引存储为低高度的 B 树,因此搜索起来非常快。我推荐这个网站作为背景阅读:http://use-the-index-luke.com/sql/anatomy/the-tree