Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mongodb中的数组查询_Mongodb - Fatal编程技术网

mongodb中的数组查询

mongodb中的数组查询,mongodb,Mongodb,请在下面的场景中帮助我。 以下是单个文档的示例数据。 在所有文档中,我需要一个文档,具有预期的数组值(状态为活动、状态为非活动等) 预期结果 1) 获取所有活动项(阵列内) 2) 获取非活动(在阵列内) 请帮助我获得以上预期结果。 我想用上面示例中所期望的数组值检索文档。您的问题在这里有答案: 但简而言之,你可以做到这一点: db.collection.find({values: {$elemMatch: {status: 'active'}}}) 希望对你有帮助 { "_id":......

请在下面的场景中帮助我。 以下是单个文档的示例数据。 在所有文档中,我需要一个文档,具有预期的数组值(状态为活动、状态为非活动等)

预期结果

1) 获取所有活动项(阵列内)

2) 获取非活动(在阵列内)

请帮助我获得以上预期结果。
我想用上面示例中所期望的数组值检索文档。

您的问题在这里有答案:

但简而言之,你可以做到这一点:

db.collection.find({values: {$elemMatch: {status: 'active'}}})
希望对你有帮助

{
"_id":.......
"type":"dept",
"values":[
  {
    "name":"dept 1",
    "status":"active"
  },
  {
    "name":"dept 2",
    "status":"active"
  }
  {
    "name":"dept 4",
    "status":"active"
  },
  {
    "name":"dept 5",
    "status":"active"
  }
 ]
}
 {
  "_id":.......
  "type":"dept",
  "values":[

   {
     "name":"dept 3",
     "status":"deleted"
   },
   {
     "name":"dept 6",
     "status":"disabled"
    },
  ]
 }
db.collection.find({values: {$elemMatch: {status: 'active'}}})