当前位置: 首页 > 知识库问答 >
问题:

mongo光标findOne

景书
2023-03-14

我正在尝试通过查询具有值数组的字段来打开来自mongoDB的数据流,并且每个数组索引只返回一条记录。

var cursor = Collection.findOne({'lastName': { $in: [arrayOfLastNames]}}).cursor();

  cursor.on('data', function (record) {
   //do something with record
  })    

无论出于什么原因,它都会在arrayOfLastNames的每个索引中提取多个记录。.findOne()方法的行为与.find()方法相同。对于为什么会发生这种情况,或者这种实施方式的可能替代方案,任何建议都将不胜感激。

共有1个答案

暨嘉
2023-03-14

您正在遇到问题,因为您使用了光标。在mongoDB文档中,“您不能将游标方法应用于findo()的结果,因为只返回一个文档。”

从您的评论中,您希望对数组中的每个项调用<code>findOne

 类似资料:
  • 光标组件允许我们通过点击和凝视与实体交互。光标组件被用于 光线投射(raycaster)来实现: 监听鼠标点击事件和基于凝视的行为。 仅捕获第一个相交实体。 发出特殊的鼠标和悬停事件(例如,与鼠标向下/向上/进入/离开相关)。 有更多的悬停状态。 当鼠标单击时,与光标相交的最近可见实体(如果有)将发出 单击事件。注意光标组件只是应用了光线投射行为。要为光标提供形状或外观,可以应用 geometry

  • 我正在尝试使用光标更新Mongo DB中的一个文档。我的Mongo DB Java驱动程序版本是3.3.0。下面是我的代码片段。 虽然这样,我可以更新文档,我认为这不是有效的方法,因为这里的集合被搜索了2次。我想用一些值更新旧文档,然后想用一些方法保存它,比如Collection.update(oldDoc)或Collection.save(oldDoc)而不创建新文档。我搜索了一下,偶然发现了下

  • 我有一个浅色主题但深色动作栏的应用程序。所以我的颜色控制激活是我的主色(绿色),在浅色背景下,编辑文本光标是绿色的。问题是我的动作栏是绿色的,所以当在动作栏中使用搜索文本时,我看不到光标,因为它是相同的颜色。我如何仅在动作栏中将光标颜色更改为白色?

  • 欢迎进入第一章,这一章将学习简单的光标移动操作。 如果你已经有了一定基础,这部分可以略过,直接 G 到文档尾部按照操作进入下一章。 移动光标 单位级 h 向左一字符 j 下一行 k 上一行 l 向右一字符 单词级 w or W 向右移动到下一单词开头 e or E 向右移动到单词结尾 b or B 向左移动到单词开头 注意:所有小写单词都是以分词符作为单词界限,大写字母以空格作为界限 在下面字符块

  • 我有存储在图形数据库中的活动。在某些情况下,多个活动被分组并聚合为一个活动。 处理后的活动提要可能如下所示: > 活动具有更新的时间戳和唯一的id。 活动按其更新时间排序,如果是分组活动,则使用其子活动中的最新更新时间。 活动可以插入列表中的任何位置(例如,如果我们开始跟踪某人,他们过去的活动将插入列表)。 可以从列表中的任何位置删除活动。 由于数据量大,使用微秒的时间戳仍然可能导致冲突(2个项目

  • 项目: 不多说了 数据库 1、让我用语言说一个 SQL (关于连表查询的+排序——一定要搞懂题目,这个简单不多说了) Golang 1、go 的并发机制 2、go 聊天室设计 计算机基础 1、http 和 https 的区别 2、短链接和长连接区别是什么