Definition 定义

跳过进入该 stage 的指定数量的文档,并将剩余的文档传递给 pipeline 中的下一个 stage。

$skip stage的原型形式如下:

  1. { $skip: <positive 64-bit integer> }

$skip 需要一个大于或等于 0 的整数,用于指定要跳过的最大文档数量。

NOTE 从 MongoDB 5.0 开始,$skip pipeline aggregation 有一个64位的整数限制。传递给管道的值如果超过这个限制,将返回一个无效的参数错误。

Behavior 行为

Use $skip with Sorted Results 对排序结果使用 $skip

如果将 $skip stage 与以下任何一项一起使用:

在将结果传递到 $skip stage 之前,请确保在你的排序中至少包含一个包含唯一值的字段。

对包含重复值的字段进行排序,可能会在多次执行中为这些重复的字段返回不同的排序顺序,特别是当集合正在积极接收写入时。

保证排序一致性(guarantee sort consistency)的最简单方法是在你的排序查询中包括 _id 字段。

更多信息请看下面的内容:

参考

https://docs.mongodb.com/manual/reference/operator/aggregation/skip