MongoDB聚合:$limit

限制传递到管道下一阶段的文档数量。

语法

js 复制代码
{ $limit: <64位正整数> }

$limit 正整数,指定要传递的最大文件数。

注意: 从 MongoDB 5.0 开始,使用

$limit

管道聚合具有 64 位整数限制。传递给管道的值如果超过此限制,将返回无效参数错误。

使用

当使用$sort聚合阶段或$sort()方法,以及findAndModify命令或 findAndModify() shell方法涉及sort字段时,

要确保在排序中至少包含一个包含唯一值的字段,然后再将结果传递给$limit阶段。

在包含重复值的字段上进行排序,可能会在多次执行中为这些重复字段返回不一致的排序顺序,尤其是当集合正在接收写入时。

保证排序一致性的最简单方法是在排序查询中包含_id字段。

举例

js 复制代码
db.article.aggregate([
   { $limit : 5 }
]);

此操作只返回管道传递给它的前 5 个文档。$limit 对其传递的文档内容没有影响。

相关推荐
葫芦和十三2 小时前
图解 MongoDB 12|索引与查询优化地图:一条主线,三个判断轴
后端·mongodb·agent
葫芦和十三8 小时前
图解 MongoDB 11|慢查询排查闭环:从 Profile 到 explain 的分层路径
后端·mongodb·agent
葫芦和十三12 小时前
图解 MongoDB 09|explain 再读:从 queryPlanner 到 executionStats
后端·mongodb·agent
葫芦和十三12 小时前
图解 MongoDB 10|覆盖查询:让索引把活干完,根本不用回表
后端·mongodb·agent
ClouGence1 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将1 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
葫芦和十三2 天前
图解 MongoDB 08|ESR 原则:复合索引的字段顺序怎么定
后端·mongodb·agent
葫芦和十三2 天前
图解 MongoDB 07|索引类型:七种索引,七种访问形状
后端·mongodb·agent