MongoDB精确数组匹配

对于精确的数组匹配,只需find()在MongoDB中使用。让我们创建一个包含文档的集合-

> db.demo300.insertOne({"Values":[100,200,400]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4d69d05d93261e4bc9ea4d")
}
> db.demo300.insertOne({"Values":[500,700,900,1000]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4d69dd5d93261e4bc9ea4e")
}
> db.demo300.insertOne({"Values":[340,670,450,500]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4d69eb5d93261e4bc9ea4f")
}

find()方法的帮助下显示集合中的所有文档-

> db.demo300.find();

这将产生以下输出-

{ "_id" : ObjectId("5e4d69d05d93261e4bc9ea4d"), "Values" : [ 100, 200, 400 ] }
{ "_id" : ObjectId("5e4d69dd5d93261e4bc9ea4e"), "Values" : [ 500, 700, 900, 1000 ] }
{ "_id" : ObjectId("5e4d69eb5d93261e4bc9ea4f"), "Values" : [ 340, 670, 450, 500 ] }

这是对MongoDB数组匹配的查询-

> db.demo300.find({"Values" : [ 340, 670, 450, 500 ]});

这将产生以下输出-

{ "_id" : ObjectId("5e4d69eb5d93261e4bc9ea4f"), "Values" : [ 340, 670, 450, 500 ] }