Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在我的 .net 应用程序中实现分页,并且我想根据页码获取数据,例如,如果我总共有 100 个项目并且每页显示 10 个项目,并且如果用户单击“2”它应该显示来自的项目11 到 20,我只想从 11 到 20 之间的 mongo 获取数据,我知道如何在 SQL 中执行此操作,但我是 Mongo 的新手。
任何想法?
不能很好扩展的简单解决方案是:
db.col.find(..).skip(i * s).limit(s)其中 i = 页码(基于 0)和 s = 页大小(在您的情况下为 10)。
db.col.find(..).skip(i * s).limit(s)
正如我所提到的,此解决方案不适用于大量数据,因为 skip(N) 是一个 o(N) 操作,并且会随着 N 的增加而减慢。可扩展的解决方案更复杂,并且通常在本质上是情境化的。