MongoDB 游标方法17 Mar 2025 | 4 分钟阅读 MongoDB 游标方法修改指定查询的执行方式。以下是游标方法的列表,包含描述、语法和示例。 #1 cursor.addOption(flag)该方法添加 "OP_QUERY" 线协议标志。它被添加来改变查询的行为,例如 tailaible 标志。 示例 上面的示例添加了 tailable 标志和 awaitData 标志,以确保查询返回一个可追踪的游标。将使用此方法生成一个游标,该游标在返回完整结果集后等待几秒钟。这样在查询过程中,它就可以获取并返回其他数据。 #2. Cursor.batchSize(size)来自 MongoDB 对象的批量结果返回使用批量大小方法指定的文档数量。在许多情况下,如果我们修改批量大小,它不会影响用户或应用程序。 示例 ![]() #3. cursor.close()该方法用于关闭游标,并在该方法的指令下释放相关的服务器资源。对于剩余结果为零或空闲时间达到指定期限的游标,服务器将自动关闭。 示例 #4. cursor.collation(<collation document>)MongoDB collation() 方法为 db.collection.find() 返回的游标指定排序规则。 close 方法接受的排序规则文档 示例 输出 ![]() #5. cursor.forEach(function)JavaScript 函数将使用 forEach 方法应用于游标的所有文档。 语法 示例 在 find() 方法返回的游标上调用 forEach() 方法,以显示集合中所有用户的姓名。 输出 ![]() #6. cursor.hint(index)在查询期间调用该方法,以覆盖 MongoDB 的默认索引选择和查询优化过程。 示例 使用年龄字段上的索引,用户集合中的所有文档都将使用以下查询返回。 #7. cursor.limit()此方法用于指定游标返回的最大文档数。它将在游标中使用,并且可以与 SQL 数据库中的 LIMIT 语句相比较。 示例 #8. cursor.map(function)map 方法被游标访问的文档使用,并将来自最近的应用程序的返回值收集到一个数组中。 示例 #9. cursor.max()max 方法用于限制 find().max() 方法的结果。MongoDB 指定特定索引的独占上限,该索引提供了一种为复合键索引指定上限的方法。 示例 为集合创建以下索引 如果您使用的是 { item: 1, type: 1 } 索引的顺序,则 max() 会限制对项目等于 Mango 且类型等于的边界以下的文档的查询 #10. cursor.min()为了约束 find() 的结果。min() MongoDB 指定特定索引的下限,以便。此方法提供了一种定义复合键索引下限的方法。 语法 示例 首先,创建一个名为 superstore 的示例集合,其中包含以下文档 现在,为集合创建索引 ![]() min() 方法使用 { item: 1, type: 1 } 索引的顺序将查询限制为文档。 #11. cursor.tailable()tailable 方法将游标标记为 tailable。它作为上限集合上的扫描器工作。即使到达集合的最后一个节点后,它仍然保持打开状态。该方法的应用将持续运行,因为新数据插入到集合中。 语法 如果 awaitdata 标志设置为 true,则当游标到达上限集合的末尾时,MongoDB 会阻止查询线程一段时间,等待新数据的到达。当新数据插入到上限集合中时,会发出唤醒信号并向客户端返回下一批数据。 #12. cursor.toArray()该方法返回一个包含游标的所有文档的数组。它将所有文档加载到 RAM 中,并通过完全迭代游标来耗尽游标。 示例 下一主题MongoDB数据库命令 |
我们请求您订阅我们的新闻通讯以获取最新更新。