小编use*_*882的帖子

Mongo Update $ set无效

我正在尝试批量更新一些mongo文档.

我正在使用查询

db.articles.update(
    { 
         'categories.id': ObjectId("51cd5272222wb6zs464fa4d9"), 
         'source.importer': 'pa'
    }, 
    { 
         $set : 
             { 
                 'source.expires-at': ISODate("2014-01-01T08:39:45Z") 
             } 
    }
)
Run Code Online (Sandbox Code Playgroud)

此查询不会更新该source.expires-at字段,但该语句的where部分工作正常.

文档结构是

{
   "_id": ObjectId("5211dc100000044707000015"),
   "categories": {
     "0": {
       "id": ObjectId("51cd5272222wb6zs464fa4d9")
    } 
  },
   "source": {
     "importer": "pa",
     "expires-at": ISODate("2013-09-18T08:49:32.0Z") 
  }
}
Run Code Online (Sandbox Code Playgroud)

mongodb

8
推荐指数
1
解决办法
1万
查看次数

Mongo - 数组查询,仅查找所有元素匹配的位置

我正在尝试创建一个mongo查询,该查询将返回所有数组都将特定元素设置为false的结果.

一个示例数据记录: -

images: [
    {
        id: ObjectId("516bef7fc05e877b31000000"),
        primary: true
    },
    {
        id: ObjectId("516bef2ac05e879622000000"),
        primary: false
    },
    {
        id: ObjectId("516beeb7c05e879e2a000000"),
        primary: false
    }
],
name: "test",
etc: "etc"
Run Code Online (Sandbox Code Playgroud)

我只希望找到所有主要字段都设置为false的文档,但通常情况下(不使用查询选择器或elemMatch)mongo将返回此文档,因为至少有一个数组元素匹配.

如何使mongo只返回与我的搜索参数匹配的文档?

非常感谢.

php arrays mongodb

6
推荐指数
1
解决办法
2934
查看次数

标签 统计

mongodb ×2

arrays ×1

php ×1