如何从MongoDB集合中检索所有嵌套字段?
为此,请使用aggregate()。让我们创建一个包含文档的集合-
>db.demo138.insertOne({"Id":101,"PlayerDetails":[{"PlayerName":"Chris","PlayerScore":400},{"PlayerName":"David","PlayerScore":1000}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e31bb9ffdf09dd6d08539a1")
}
>db.demo138.insertOne({"Id":102,"PlayerDetails":[{"PlayerName":"Bob","PlayerScore":500},{"PlayerName":"Carol","PlayerScore":600}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e31bbcefdf09dd6d08539a2")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo138.find();
这将产生以下输出-
{
"_id" : ObjectId("5e31bb9ffdf09dd6d08539a1"), "Id" : 101, "PlayerDetails" : [
{ "PlayerName" : "Chris", "PlayerScore" : 400 },
{ "PlayerName" : "David", "PlayerScore" : 1000 }
]
}
{
"_id" : ObjectId("5e31bbcefdf09dd6d08539a2"), "Id" : 102, "PlayerDetails" : [
{ "PlayerName" : "Bob", "PlayerScore" : 500 }, { "PlayerName" : "Carol", "PlayerScore" : 600 }
]
}以下是从集合中检索所有嵌套字段的查询-
> db.demo138.aggregate([{ $unwind:"$PlayerDetails" }, { $project: { "PlayerName":"$PlayerDetails.PlayerName", "PlayerScore":"$PlayerDetails.PlayerScore" } } ] );这将产生以下输出-
{ "_id" : ObjectId("5e31bb9ffdf09dd6d08539a1"), "PlayerName" : "Chris", "PlayerScore" : 400 }
{ "_id" : ObjectId("5e31bb9ffdf09dd6d08539a1"), "PlayerName" : "David", "PlayerScore" : 1000 }
{ "_id" : ObjectId("5e31bbcefdf09dd6d08539a2"), "PlayerName" : "Bob", "PlayerScore" : 500 }
{ "_id" : ObjectId("5e31bbcefdf09dd6d08539a2"), "PlayerName" : "Carol", "PlayerScore" : 600 }热门推荐
10 新年祝福语简短聪明可爱
11 舅妈生日红包祝福语简短
12 女儿生日祝福语说说简短
13 嫂子生日的祝福语简短
14 简短的出行工作祝福语
15 微信晚上祝福语简短
16 儿女的生日祝福语简短
17 低调祝福语简短10字
18 别人过大寿祝福语简短