如何在MongoDB中查询文档以比较数组中的字段?
要比较数组中的字段,请使用$gt和$lt。让我们创建一个包含文档的集合-
> db.demo147.insertOne({"Details":[{"Score":45},{"Score":46}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e32fa21fdf09dd6d08539be")
}
> db.demo147.insertOne({"Details":[{"Score":65},{"Score":86}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e32fa40fdf09dd6d08539bf")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo147.find().pretty();
这将产生以下输出-
{
"_id" : ObjectId("5e32fa21fdf09dd6d08539be"),
"Details" : [
{
"Score" : 45
},
{
"Score" : 46
}
]
}
{
"_id" : ObjectId("5e32fa40fdf09dd6d08539bf"),
"Details" : [
{
"Score" : 65
},
{
"Score" : 86
}
]
}这是在MongoDB中查询文档的方法,比较数组中的字段-
> db.demo147.find({ 'Details.Score': { $gt: 45, $lt: 50 }});这将产生以下输出-
{ "_id" : ObjectId("5e32fa21fdf09dd6d08539be"), "Details" : [ { "Score" : 45 }, { "Score" : 46 } ] }