Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.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_Mongodb Query - Fatal编程技术网

获取与MongoDB中的值相关的文档总数

获取与MongoDB中的值相关的文档总数,mongodb,mongodb-query,Mongodb,Mongodb Query,我是mongodb的新手,请原谅我的疏忽。 下面提供了我的数据库示例: { "_id" : ObjectId("58db82583d5b9f0a47c3db6f"), "People" : [ "Ivar Zapp" ], "Link" : [ "https://wikileaks.org/gifiles/docs/19/1971280_panama-costa-rica-cuba-111104-.html"

我是mongodb的新手,请原谅我的疏忽。 下面提供了我的数据库示例:

{
    "_id" : ObjectId("58db82583d5b9f0a47c3db6f"),
    "People" : [
            "Ivar Zapp"
    ],
    "Link" : [
            "https://wikileaks.org/gifiles/docs/19/1971280_panama-costa-rica-cuba-111104-.html"
    ]
}
{
    "_id" : ObjectId("58db82583d5b9f0a47c3db70"),
    "People" : [
            "Ivar Zapp"
    ],
    "Link" : [
            "https://wikileaks.org/gifiles/docs/87/872609_panama-costa-rica-cuba-111104-.html"
    ]
}
{
    "_id" : ObjectId("58db82583d5b9f0a47c3db71"),
    "People" : [
            "Ivar Zapp"
    ],
    "Link" : [
            "https://wikileaks.org/gifiles/docs/19/1964024_-latam-centam-brief-111104-.html"
    ]
}
我现在的问题是,根据上面的片段,我如何获得与某人姓名相关的链接数?输出示例如下:

{
    "People" : "Ivar Zapp",
    "link_Count" : "3"
}

我曾经考虑过聚合,但我现在似乎很长一段时间都没有找到使用聚合的解决方案。我愿意接受任何解决方案或反馈,只要它能帮助我进步一点点。非常感谢您提供的任何解决方案或反馈!提前谢谢

您需要使用$group操作: 你试试下面的命令

db.collection.aggregate([
    { $group: {
        _id: '$People',
        count: { $sum: 1 }
    }},
    { $project: {
        _id: 0,
        People: '$_id',
        count: 1
    }}
    ]);
输出:

{
    "count": 3,
    "People": ["Ivar Zapp"]
}

您需要使用$group操作: 你试试下面的命令

db.collection.aggregate([
    { $group: {
        _id: '$People',
        count: { $sum: 1 }
    }},
    { $project: {
        _id: 0,
        People: '$_id',
        count: 1
    }}
    ]);
输出:

{
    "count": 3,
    "People": ["Ivar Zapp"]
}