样本数据
db.media.find().pretty()
{
"_id" : ObjectId("585f822891c851f743fea7b5"),
"Type" : "DVD",
"Title" : "Blade Runner",
"Released" : 1982
}
{
"_id" : ObjectId("585f824d91c851f743fea7b6"),
"Type" : "DVD",
"Title" : "Tony Story3",
"Released" : 2010
}
{
"_id" : ObjectId("585f828391c851f743fea7b7"),
"Type" : "DVD",
"Title" : "Matrix",
"Released" : 1999
}
执行大于和小于比较$gt、$lt、$gte、$lte
db.media.find({Released:{$gt:1999}})
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
db.media.find({Released:{$gte:1999}})
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
db.media.find({Released:{$lt:1999}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
db.media.find({Released:{$lte:1999}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
获取除特定文档外所有的文档($ne)
db.media.find({Released:{$ne:1999}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
指定一个匹配的数组($in)
db.media.find({Released:{$in:[1999,2000,2001]}})
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
查找不在数组中的文档($nin)
db.media.find({Released:{$nin:[1999,2000,2001]}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
匹配文档中所有的属性($all)
db.media.find({Released:{$all:[1999,2000]}})
没有文档返回,因为没有同时满足发行年份为1999,2000的DVD。
在文档中搜索多个表达式
db.media.find({$or:[{Title:’Matrix’},{Released{$ne:1999}}]})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
返回满足其中任何一个条件的文档
返回含有特定字段的文档
db.media.find({Released:{$exists:true}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
否定任何标准操作符执行的检查($not)
db.media.find({Released:{$gt:1999}})
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
db.media.find({Released:{$not:{$gt:1999}}})
{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }