MongoDB文档查询操作
数组查询
假设现在有一个数据集,如下:
{
"_id" : ObjectId("5d11b65ac697d5c165d09484"),
"name" : "四大名著",
"books" : [
"三国演义",
"西游记",
"红楼梦",
"水浒传"
],
"likes" : 300
}
{
"_id" : ObjectId("5d11b9e5c697d5c165d09485"),
"name" : "名著",
"books" : [
"西游记",
"水浒传"
],
"likes" : 400
}
查询books中包含“西游记”的文档 db.booklist.find({books:"西游记"})
查询books既有三国演义又有红楼梦的文档,可以使用$all
db.booklist.find({books:{$all:["三国演义","红楼梦"]}})
也可以通过下标查询,查询下标为1的项是水浒传的文档 db.booklist.find({"books.1":"水浒传"})
注意:books.1必须加引号,否则查询不到\color{red}{注意:books.1必须加引号,否则查询不到}注意:books.1必须加引号,否则查询不到
也可以按照数组长度来查询,查询数组长度为2的文档