MongoDB-如何从没有文档结构的嵌套文档中获取结果

MongoDB-如何从没有文档结构的嵌套文档中获取结果,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一份结构如下的文件: { "aaa": { "bbb":{ "ccc":123 "ddd":456 } } } 查询时,我使用db.mycoll.find{}、{aaa.bbb.ccc:1}只获取数字123,但MongoDB将返回完整结构的结果,如下所示 { "aaa": { "bbb":{ "ccc":123 } } }

我有一份结构如下的文件:

{
    "aaa": {
        "bbb":{
            "ccc":123
            "ddd":456
        }
    }
}
查询时,我使用db.mycoll.find{}、{aaa.bbb.ccc:1}只获取数字123,但MongoDB将返回完整结构的结果,如下所示

{
    "aaa": {
        "bbb":{
            "ccc":123
        }
    }
}

如何避免MongoDB返回完整结构而只返回内部值?

您可以映射函数:

试着这样做:

db.mycoll.find({},{"aaa.bbb.ccc":1}).map( function(u) { return u.aaa.bbb.ccc;})

结果::[123]

使用聚合的方法可以是这样的:

db.mycoll.aggregate(
    [
        {
            $project: {
                _id: "$aaa.bbb.ccc"
            }
        },
    ]
);
结果将是:

{ 
    "value" : 123.0
}