Vas*_*kov 2 scala mongodb reactivemongo
我需要offset从查询中跳过一些文档(),并且只返回limit后续文档的数量.我知道以下天真的方法:
collection.find(BSONDocument())
.cursor[T].collect[List](offset+limit).map(_.drop(offset))
Run Code Online (Sandbox Code Playgroud)
但它并不是真正需要的,因为它会offset+limit在JVM内存中加载大量文档,而我想在"数据库"端过滤它们.
解决方案:使用QueryOpts.例:
collection.find(BSONDocument())
.options(QueryOpts(skipN = offset))
.cursor[T].collect[List](limit)
Run Code Online (Sandbox Code Playgroud)
请注意,使用skip不是非常有效,因为mongodb不支持有效分页,它将通过遍历所有文档跳过所需的数字.
| 归档时间: |
|
| 查看次数: |
730 次 |
| 最近记录: |