mongo查询时,能否先统计数量,再获取skip和limit后的值?
因为经常要做分页, 所以需要用到 skip和limit来获取当前页的值,
但是 在获取总页数, 所以有没有方式可以在一次查询中获取 总页数和 当前页的值?
现在是 分两次查询,结果再结合在一起。
1. count()
2. .skip(*).limit(*)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
没有一次查询返回的,不过你可以将这两个方法封装一下,每次调用不就可以么?
楼上的表述基本正确。不过代码还有可以优化的地方。
count
和find
/skip
/limit
是典型的可以并行的运算。上面的写法变成了查完一个再查另外一个,有违nodejs的理念。改进一下:我觉得楼上的两种做法欠妥,因为
count
的实现是这样的这是在mongodb的cli里面输出的。
一句话概述就是count其实还是调用的find。
所以这种查两次数据库的方法我认为是欠妥的。