本文主要是介绍MongoDB的skip,limit,sort执行顺序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
先sort再skip,最后limit
所有数据都是不一样的。
先看 skip和limit, 当两者一起使用的时候, 不管其位置顺序,默认先skip,再limit。
如下图:
再看sort ,【6】语句,我的数据已经排序。之后三条数据无论怎么变换都是一样的排序结果。(这里未列出所有可能。将skip和limit位置变化后跟sort组合,但是结果仍然相同)
由结果可以得出,当sort,skip,limit一起使用时,无论其位置变化,总是先sort再skip,最后limit。
但是我想要先跳过,再限制条数 最后才排序怎么办?
可以用aggregate, aggregate有管道流的性质,$skip,$limit,$sort执行顺序跟位置一致。
位置决定执行顺序。
聚合管道的优化:
http://docs.mongoing.com/manual-zh/core/aggregation-pipeline-optimization.html#agg-sort-skip-limit-sequence
这篇关于MongoDB的skip,limit,sort执行顺序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!