MongoDb 使用位置运算符拉取

2024-02-01

我的文档结构如下

{
 _id: 12342342
 items: [
   {
      ownerId: 123,
      dates: ['2014-10-01', '2014-10-02']
   },
   {
      ownerId: 234,
      dates: ['2014-10-01', '2014-10-02']
   },

 ]
}

我想从父对象的ownerId 为特定值的日期中提取特定值。

I have

   var myDate = '2014-10-01'
   db.collection('things').update({'items.dates': {$in: [myDate]}}, 
      {$pull: { 'items.$.dates': myDate } }, {multi: true});

但这会拉取任何ownerId,这不是我想要的。有人可以帮助我获得正确的查询语法吗?

谢谢。


如你所愿pull关于具体的ownerId,你需要指定ownerId在查询部分update方法。这是给你一个参考:

var myDate = '2014-10-01';
var ownerId = 123;

db.things.update({
    'items' : {
        '$elemMatch' : {
            ownerId : ownerId,
            dates : {
                $in : [ myDate ]
            }
        }
    }
}, {
    $pull : {
        'items.$.dates' : myDate
    }
}, {
    multi : true
});

事实上,运营商$in这里是不必要的。

var myDate = '2014-10-01';
var ownerId = 123;

db.things.update({
    'items' : {
        '$elemMatch' : {
            ownerId : ownerId,
            dates : myDate
        }
    }
}, {
    $pull : {
        'items.$.dates' : myDate
    }
}, {
    multi : true
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoDb 使用位置运算符拉取 的相关文章

  • MongoDB聚合选择性项目

    我在聚合聚合期间遇到了重塑文档的问题 基本上我想根据条目的类型将条目推送到字段中 我的结构如下 id P1 entities type A val X type B val X type A val Y 我想 unwind 和 projec
  • Mongodb 以不区分大小写的方式排序

    我在 Nodejs express 中以 mongodb 作为数据库的一个项目中非常努力地构建 当我使用 sort 获取所有数据时 它以错误的方式返回数据 那么有没有办法按照我的预期得到正确的格式 如下所示 如果我们在数据库中有三个记录 i
  • 如何查看 Realm ObjectId 是否等于 String (JavaScript)

    我正在使用 MongoDB 的 Realm 并尝试查看 ObjectId 是否等于具有相同字符的字符串 我尝试将 ObjectId 转换为字符串 反之亦然 但无论我尝试什么 它都不会将它们视为相等 即使这些值完全相同并且当我记录它们时它们看
  • 使用 mgo 驱动程序进行 mongo 聚合查询

    我在 mongodb 中有以下查询 db devices aggregate match userId v73TuQqZykbxFXsWo state true project userId 1 categorySlug 1 weight
  • 猫鼬中的数组过滤器

    将查询转换为节点 arrayfilter 在 mongoose 中工作的版本或者如何在节点应用程序中运行它们 db getCollection student update id ObjectId 5a377d62d21a3025a3c3a
  • 如何查找 mongoose 的所有集合

    我应该找到存储在 mongo 数据库中的所有集合 require app models schemas loading application schemas mongoose connect mongodb localhost test
  • MongoDb 中的全局自增字段

    有没有办法在集合中创建全局自动递增的值 Perforce 有一个变更列表的概念 它可以成为无状态更新的强大功能 我正在考虑相同类型的功能 例子 create gt DocA name foo gt changelist 1 create g
  • 错误:子进程失败,退出,错误号为 51 MongoDB

    重新启动 MongoDB 时出现此错误 我正在使用 Mongo 3 2 4 并在新机器上进行此设置 Starting mongod about to fork child process waiting until server is re
  • MongoDB req.body 问题

    我有一个非常简单的 Mongo 设置 如下所示 这非常适合从输入字段获取数据并保存数据 一切都在工作 我的问题 我将如何循环遍历前端的 jobs 变量并设置数据 以便它适用于我的模型 不知何故 我需要将其输入到输入中 以便我可以 req b
  • 由于WiredTiger.turtle权限,Mongodb无法启动

    我试图在 ubuntu 16 04 上启动 mongodb 4 0 4 但数据库拒绝了我的所有尝试 我检查了 mongodb 日志文件 发现名为 WiredTiger turtle 的文件没有所需的权限 这里记录错误 2018 11 26T
  • 如何在 Mongoose 中定义排序函数

    我正在开发一个小型 NodeJS Web 应用程序 使用 Mongoose 访问我的 MongoDB 数据库 我的收藏的简化架构如下 var MySchema mongoose Schema content type String loca
  • 使用 or 运算符进行 Morphia 查询

    我想知道如何使用 or 运算符编写 Morphia mongodb 查询我这样写了 mongodb 查询 效果很好 db Inv find or sug id 2 grp id 2 但是当我尝试在吗啡中编写此内容时 我感到很困惑 以下查询是
  • Spring Data - MongoDB 索引 DBRef

    我正在使用 spring data mongodb 1 2 0 RELEASE 我有两个类 A 和 B 其中 B 引用了 A 并且用 DBRef 进行了注释 Class A Document collection a public clas
  • 为什么 Casbah / Java MongoDB 驱动程序最终会出现 java.lang.IllegalArgumentException?

    我使用时看到一个奇怪的问题casbah java driver 当驱动程序尝试从 mongo 创建响应时 我不断遇到以下异常 Oct 16 2012 10 45 07 AM com mongodb DBTCPConnector MyPort
  • 下一个和上一个文档

    我正在制作一个图片库 每个图像都有一个 id 当我查看图像时 我想要接下来的 3 个图像和之前的 3 个图像 我怎样才能在 mongodb 查询中得到这个 我认为我可以使用 sort by id 因为这是不可排序的 也许使用mapReduc
  • 为什么我在 Nodejs 中收到“在将标头发送到客户端后无法设置标头”错误?

    我正进入 状态 Cannot set headers after they are sent to the clientNodejs 中出现错误 我无法弄清楚原因 代码如下 我正在使用 mongoose 将数据保存在 mongodb 中 我
  • 按日/月分组,并取 mongo 中当天/月评分的平均值

    我在 mongodb 中有这些数据 rating 4 ceatedAt ISODate 2016 08 08T15 32 41 262 0000 rating 3 createdAt ISODate 2016 08 08T15 32 41
  • 服务器发现和监控引擎已弃用

    我在 Node js 应用程序中使用 Mongoose 这是我的配置 mongoose connect process env MONGO URI useNewUrlParser true useUnifiedTopology true u
  • 为任何更新查询增加 Mongoose 文档版本的简单方法?

    我想开始利用 Mongooses 文档版本控制 v key 我在实际增加版本值时遇到了问题 然后我发现您必须添加this increment 执行查询时 有没有办法自动递增 目前 我只是将其添加到pre用于更新类型查询的中间件 module
  • MongoDB的ObjectId是如何生成的?

    他们是吗somewhat随机的 我的意思是 人们能够将它们分开吗 它们不是随机的 可以很容易地预测 BSON ObjectID 是一个 12 字节值 由 4 字节时间戳组成 自纪元以来的秒数 一个 3 字节 机器 ID 2 字节进程 ID

随机推荐

  • 为什么 git 无法将“origin/master”识别为有效的对象名称?

    www gt git branch track live origin master fatal Not a valid object name origin master www gt git remote origin www gt g
  • 在 C# 中使用 SQLite 的 Pragma-s

    我发布了一个问题 我的项目有一个 c dll 其中在 Sqllite 中创建了一个数据库 共享拒绝 无 这个 dll 会将数据插入到数据库中 我有一个 c exe 它必须访问数据库并显示它 显示需要异步完成 所以在启动与 sqlitedb
  • 运行测试时导入两次

    我的tests py中有这段代码 from models import 在 models py 中我有一个信号处理程序并将其注册为 post save connect post save note sender Note 当我运行测试时 m
  • 当 tabs + viewpager 位于滚动视图内时,无法加载片段?

    使用材料设计 tablayout viewpager材料设计布局 http blog grafixartist com material design tabs with android design support library 一切都
  • 弹簧支架控制器返回 404

    我的其余控制器是由 spring 编写的 返回 404 但是当我通过 Eclipse 进行调试时 我看到它到达我的方法并返回结果 但结果仍然是 404 控制器就像 RestController RequestMapping admin co
  • PHP Yii:运行时数据库连接

    我想在运行时使用 Yii 连接到第二个数据库 数据库名称将来自用户登录后的数据库表 我在教程中看到我应该这样做 db2 Yii createComponent array class gt EMongoClient server gt mo
  • 如何在 R 中模拟具有同配性或同质性的图?

    In R 我目前正在处理该包igraph 我想知道是否有任何方法可以模拟具有同质或同配结构的图 或者是否有其他方法R软件包允许这样做 谢谢 你有没有看过ergm https cran r project org web packages e
  • 如何检测Android应用程序是否被强制停止或卸载? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 假设应用程序运行良好 但用户强行停止
  • 在Refl中使用重写

    我正在使用 Idris 学习第 8 章类型驱动开发 我有一个关于 rewrite 如何与 Refl 交互的问题 此代码作为重写如何在表达式上工作的示例显示 myReverse Vect n elem gt Vect n elem myRev
  • Java中监听器的顺序

    我编写了自己的表格单元格编辑器 它扩展了AbstractCellEditor并实现了TableCellEditor an ItemListener and a MouseListener 有什么方法可以让我拥有mouseClicked方法先
  • 通过 Eclipse 使用 TestNG 和 Java 12 执行 Selenium 测试时启动层 java.lang.module.FindException 初始化期间发生错误

    引导层初始化期间发生错误 https i stack imgur com pNbsT png当我运行时 我不断收到此错误 我的测试 boot层初始化时出错 java lang module FindException 无法派生模块描述符 C
  • 查找两个语句之间的语义相似性

    我目前正在处理小型应用程序python我的应用程序具有搜索功能 当前使用difflib 但我想创建语义搜索它可以根据用户输入的文本从我的数据库中给出前 5 或 10 个结果 它与谷歌搜索引擎的工作原理相同 我找到了一些解决方案Here ht
  • if-let 语句不会解开可选内容

    我在我的代码中遇到了一些看起来很好奇的东西 并且想知道这种行为是否有一个简单的解释 鉴于以下声明 if let tabBarController topViewController as UITabBarController for sub
  • 如何推迟shared_ptr的删除操作?

    我创建了一个指针sample主要类 我正在将此指针传递给函数function1 该函数必须使用指针作为共享指针并使用该指针执行一些操作 退出期间function1 的析构函数sample由于调用shared ptr 当我将相同的指针传递给不
  • 实现自定义 LINQ-to-X 提供程序

    我有一个搜索工具 它接受复杂的搜索字符串 实际上是 JSON 中的 n 级对象图 并返回一些结果 我想通过类似 LINQ 的机制向其他 内部 开发人员公开该功能 假设每个结果都是由一个类定义的Result 我可以创建类似以下的方法 Func
  • Google+ 的共享意图无法访问图像

    我正在调用共享图像的意图 这适用于大多数提供商 但适用于 Google Google 打开不带图片的帖子活动 并显示 Toast 您只能发布存储在设备上的照片 同时 File f storeImage image f data data c
  • 在头文件与 .cpp 文件中编码 C++(主要)

    多年来 我一直以标准方式编写 C 代码 在头文件 hpp 中使用类声明 在源 cpp 文件中使用函数定义 最近 我搬到了一家新公司 其中的代码 似乎受到 boost 编码风格的影响 完全用 hpp 文件进行编码 并用一个短的 cpp 文件来
  • Visual Studio Extensions - 支持多个版本的VS

    我一直在编写一个扩展 编辑器分类器项目 带有一些其他功能 它在 VS2013 上运行良好 但我需要支持其他版本 VS2012 和 VS2015 当它超出预览时 当我刚刚添加支持的版本时vsixmanifest 我面临的问题是 出口ITest
  • js函数不调用自动填充函数

    我有一个输入字段 其中包含州名称并在其他字段上显示相应的区域 当我更改状态字段的值时 区域的值也应该更改 它不适用于我的代码 这有什么问题 div class col md 4 form group style padding right
  • MongoDb 使用位置运算符拉取

    我的文档结构如下 id 12342342 items ownerId 123 dates 2014 10 01 2014 10 02 ownerId 234 dates 2014 10 01 2014 10 02 我想从父对象的ownerI