MongoDB 投影参数在 findOne() 中不起作用

2023-12-23

我试图在 findOne() 上使用投影参数从文档(统计信息)中提取单个字段,但它似乎只是返回整个文档。我在 Node.js 中使用版本“mongodb”:“^3.4.1”

这是文档结构

{ _id: 5e563015fa9a1a0134cac3cb,
  username: 'user1',
  password: '1234',
  email: '[email protected] /cdn-cgi/l/email-protection',
  stats: 
   { totalViewed: 122,
     totalUnique: 4,
     tknow: 80,
     tdknow: 42,
     setCnt: 78 },
  progress: 
   [ { cardId: 1001, knowCnt: 3, dknowCnt: 4 },
     { cardId: 1016, knowCnt: 0, dknowCnt: 0 } ] }

这是代码:

 var findOneDoc = function() {
        db.collection("testusers").findOne(
          { username: "user1" },
          { stats: 1 }, //field to return
          function(err, result) {
            if (err) {
              console.log("Error: ", err);
            }
            console.log("Success: ", result);
          }
        );
      };
     findOneDoc();

我也尝试过:{$project: {stats: 1}},无济于事

Thanks


基于文档 https://mongodb.github.io/node-mongodb-native/3.4/api/Collection.html#findOne the .findOne()方法将选项作为第二个参数,建议使用projection定义字段:

db.collection("testusers").findOne(
    { username: "user1" },
    { projection: { stats: 1 } },
    function(err, result) { ... }
);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoDB 投影参数在 findOne() 中不起作用 的相关文章

随机推荐

  • 单击搜索按钮时将关闭不可取消的对话框

    我在我的应用程序中显示了一个不可取消的对话框 但如果用户按下 搜索 按钮 它就会被取消 我尝试覆盖 onSearchRequested 和 onKeyDown 但没有帮助 有什么建议吗 我也遇到了这个问题 Jamasan 的解决方案对我不起
  • 当我使用 BeautifulSoup .findAll 时如何获取下一个 div?

    我在 python2 7 中使用 BeautifulSoup 我有这样的代码 html div div div div one div div div two div div three div div four div div div f
  • Getter 不与任何字段关联 - Realm

    我刚开始使用领域库并试图在我的 Android 应用程序中实现它 只是陷入了我试图分割我的点listview基于我的特定元素的视图类型json响应 我尝试用以下方法来实现这些部分recycler view但问题是我有 2 种视图类型 并且为
  • 如何从 woocommerce 中的 id 产品获取类别名称

    我正在使用 woo commerce 创建一个电子商务网站 我正在努力编写一个代码 如何在 woocommerce 中使用类别 id 显示产品的类别名称 在 WordPress 中 很容易通过 id 显示类别名称 get the categ
  • Python 中的 Github 风味 Markdown

    有谁知道可行的 Python GFM 实现吗 目前我正在使用JavaScript 渲染器 http www freedomsponsors org core issue 1 allow formatting controls on comm
  • 使 QTreeWidgetItem 在兄弟姐妹中独一无二

    有什么方法可以确保更新现有的QTreeWidgetItem或者插入一个新项目可确保该项目根据单列的值在其同级项目中是唯一的 我尝试过做这样的事情QTreeView和我自己的自定义模型 并已使其正常工作 但一些高级功能 例如通过拖放移动项目
  • 可选 isPresent 与 orElse(null)

    我正在将项目中的依赖项更新到 Spring 5 并受到编译错误的轰炸 其中方法定义findOne 已被替换为findById 现在返回一个Optional 如果我错了请纠正我 在重构时 我遇到了多种可以选择采用的方法 因此我希望获得一些关于
  • 如何将图像和文本添加到 QLabel

    我有一个带有 QLabel 的 QHBoxLayout 我试图在 QLabel 中获取图标和窗口标题文本 那可能吗 或者甚至将图标直接添加到 QHBoxLayout 以便放置在窗口标题文本之前 这是我的代码 class MyBar QWid
  • 如何将参数从 CDI 中的另一个类传递给注入的类?

    我是 CDI 新手 试图找到这个问题的解决方案 但是找不到任何解决方案 问题是假设我有一个正在注入的类 A 其中注入了一些值 toPass 现在我想将这个相同的值 toPass 传递给B类 B类是从A类注入的 public class A
  • 将索引(数字 ID)列添加到大型数据框[重复]

    这个问题在这里已经有答案了 我将大型 csv 文件读取到数据框中 csv 文件中的数据来自多个表示用户信息的网站 例如 这里是数据帧的结构 user id number of logins number of images web 001
  • 遇到 java.net.BindException:服务器客户端套接字应用程序上的地址已在使用(绑定失败)

    我在服务器客户端套接字应用程序上遇到 java net BindException 地址已在使用 绑定失败 我正在尝试使用 Youtube 教程作为参考来了解 Java 套接字 我的代码似乎与视频中的所有内容匹配 变量名称除外 但是 当尝试
  • 创建和更新 Zend_Search_Lucene 索引

    我正在使用 Zend Search Lucene 创建文章索引 以便可以在我的网站上搜索它们 每当管理员在管理区域中更新 创建 删除文章时 都会重建索引 config Zend Registry get config cache confi
  • 比较 Python 类型的类型

    我有一个函数接受另一个用类型提示注释的 Python 函数 annotations 我想使用这些提示在运行时进行一些类型检查 问题是来自输入模块的类型类似乎不太容易使用 没有 isinstance 没有 issubclass 所以 我想知道
  • backbone.js:调用 collection.reset() 是否也会删除模型?

    我在主干文档中读到调用collection reset 清除集合 我想知道它是否也会删除模型 或者它们是否继续存在于内存中 如果没有删除它们 是否有一种更简单的方法可以删除集合中的所有模型 而无需迭代模型并调用model remove 你可
  • Powershell 脚本可以在 Powershell 中运行,但不能在 VB.Net 中运行

    我有一个简单的 powershell 脚本来启用 Exchange 中名为 test ps1 的邮箱 这是脚本 添加 pssnapin microsoft exchange management powershell admin 启用邮箱
  • Typescript 的代码覆盖率 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我们刚刚在 Typescript 中启动了一个项目 我们需要获取代码覆盖率数据 我们现有的 JavaS
  • 成功的 MySQL DELETE 返回什么?如何检查DELETE是否成功?

    使用 PHP 我尝试删除一条记录 但我想检查它是否成功 成功后是否返回任何内容DELETE FROM foo where bar stuff 或者 您知道其他方法来检查删除是否成功吗 或者我最好在删除它之前确保该行存在 如果可能的话 我试图
  • Kendo Grid:当行更改时如何从代码更新数据源

    这是我之前几篇关于更新剑道网格数据源的文章的延续 我想做的最后一件事是当用户转到新行时发生这种情况 感谢 Lars 迄今为止提供的令人印象深刻的帮助 我通过检测行更改 碰巧在指令中执行此操作 并回调网格控制器来执行此操作 在网格控制器中我在
  • WSL2 上的 Ubuntu 18.04:“登录失败:尚未授予用户在此计算机上请求的登录类型。”

    重新启动 Windows 计算机后 我在尝试打开 Ubuntu 18 04 WSL2 实例时收到此错误 Logon failure the user has not been granted the requested logon type
  • MongoDB 投影参数在 findOne() 中不起作用

    我试图在 findOne 上使用投影参数从文档 统计信息 中提取单个字段 但它似乎只是返回整个文档 我在 Node js 中使用版本 mongodb 3 4 1 这是文档结构 id 5e563015fa9a1a0134cac3cb user