Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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_Mongoose - Fatal编程技术网

Mongodb 对对象数组进行计数

Mongodb 对对象数组进行计数,mongodb,mongoose,Mongodb,Mongoose,如果我有有效载荷: { "objs": [ { "_id": "1234566", "some":"data" }, { "_id": "1234566", "some":"data" }, { "_id": "2345666", "some":"otherdata" }, { "_id": "4566666", "some":"yetotherdata" }, ] } 获取id为1234566的所有对象的

如果我有有效载荷:

{
    "objs": [
        {  "_id": "1234566", "some":"data" },
        {  "_id": "1234566", "some":"data" },
        {  "_id": "2345666", "some":"otherdata" },
        {  "_id": "4566666", "some":"yetotherdata" },
    ]
}

获取id为1234566的所有对象的最佳过滤器是什么?

查找具有id为1234566的对象的所有文档:

为文档筛选具有指定_id的obj项。假设您的文档具有_id属性

db.collection.aggregate([
{$unwind:"$objs"},
{$match:{"objs._id":"1234566"}},
{$group:{"_id":"_id","objs":{$push:{"id":"$objs._id","some":"$objs.some"}}}}, 
{$project:{"_id":0,"objs":1}}
])
如果您想根据不同的字段进行分组,可以在$group阶段中更改_id。

是否更改{u id:1234566}过滤器?
db.collection.aggregate([
{$unwind:"$objs"},
{$match:{"objs._id":"1234566"}},
{$group:{"_id":"_id","objs":{$push:{"id":"$objs._id","some":"$objs.some"}}}}, 
{$project:{"_id":0,"objs":1}}
])