如何使用 $lte 和 $in 对 MongoDB 的值进行查询?
我们首先创建一个带有文档的集合 -
> db.queryMongoValueDemo.insertOne(
{
_id:101,
"ScoreDetails":[{Score:80},{Score:45},{Score:25},{Score:70}]
}
);
{ "acknowledged" : true, "insertedId" : 101 }
> db.queryMongoValueDemo.insertOne(
{
_id:102,
"ScoreDetails":[{Score:80},{Score:24},{Score:34}]
}
);
{ "acknowledged" : true, "insertedId" : 102 }
> db.queryMongoValueDemo.insertOne(
{
_id:103,
"ScoreDetails":[{Score:99},{Score:95}]
}
);
{ "acknowledged" : true, "insertedId" : 103 }利用 find() 方法显示集合中的所有文档 -
> db.queryMongoValueDemo.find().pretty();
这将产生以下输出 -
{
"_id" : 101,
"ScoreDetails" : [
{
"Score" : 80
},
{
"Score" : 45
},
{
"Score" : 25
},
{
"Score" : 70
}
]
}
{
"_id" : 102,
"ScoreDetails" : [
{
"Score" : 80
},
{
"Score" : 24
},
{
"Score" : 34
}
]
}
{
"_id" : 103,
"ScoreDetails" : [
{
"Score" : 99
},
{
"Score" : 95
}
]
}使用 $not 和 $gt 操作符一起实现的 $lte 和 $in 操作符的查询 -
> db.queryMongoValueDemo.find({
"ScoreDetails.Score": {
"$eq": 80,
"$not": { "$gt": 80 }
}
});这将产生以下输出 -
{ "_id" : 101, "ScoreDetails" : [ { "Score" : 80 }, { "Score" : 45 }, { "Score" : 25 }, { "Score" : 70 } ] }
{ "_id" : 102, "ScoreDetails" : [ { "Score" : 80 }, { "Score" : 24 }, { "Score" : 34 } ] }
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言
C++
C#
MongoDB
MySQL
Javascript
PHP