1.插入数据

首先我们看下添加几条Document进来

db.table1.insertMany(
    [
        {name:1,age:1},
        {name:2,age:1},
        {name:3,age:1},
        {name:4,age:1},
        {name:5,age:1},
        {name:6,age:1},
        {name:7,age:1},
        {name:8,age:1},
        {name:9,age:1},
        {name:10,age:1},
        ])

1. Limit 选取

要从这些 Document 中取出多少个 

做个小例子 : 我只要 4 条 Document

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

结果是很明显的,很赤裸裸的

 

但是我还是要解释一下 : limit(4) 就是选取四条Document, 从整个Collection的第一条 Document 开始选取两条

如果我们不想从第一条Document开始选取,怎么办呢?

2.Skip 跳过

我要跳过多少个Document

 做个小例子 : 我要跳过前五个 Document 直接从第六个Document 开始

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

结果还是很明显,很赤裸

按照国际惯例解释一下 : skip(5) 就是跳过五条Document, 从整个Collection 的第一条 Document 开始跳,往后跳五条

另一个例子 : 跳过第一条 直接从 第二条 开始

3.Limit + Skip :

从这儿到那儿 的 选取

跳五条再选两条

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

还有另一种写法

 MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

两种写法完全得到的结果完全一样但是国际惯例的解释却不同

选取两条Document 但是要 跳过 第第五条Document 从 第六条 开始 选取

 4. Sort 排序

将结果按照关键字排序

将find出来的Document 按照 price 进行 升序 | 降序 排列

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

 

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

 按照 price 字段进行升序 , 1 为升序 , -1 为降序     没有搜到结果按最小处理

 5. Limit + Skip + Sort

MongoDB 之 Limit 选取 Skip 跳过 Sort 排序

不应该是先跳在选取,最后排序吗?

重点 : Sort + Skip + Limit 是有执行优先级的 他们的界别分别是 优先 Sort  其次 Skip 最后 Limt

 Skip + Limit 的优先级 也是先 Skip 再 Limit

 

相关文章:

  • 2022-12-23
  • 2022-02-15
  • 2021-12-09
  • 2021-12-06
  • 2021-06-27
  • 2021-09-21
  • 2022-12-23
猜你喜欢
  • 2021-09-27
  • 2021-06-04
  • 2021-11-25
  • 2022-01-30
  • 2022-12-23
  • 2022-12-23
  • 2021-09-11
相关资源
相似解决方案