MongoDB 索引数组的每个值,以便您可以查询单个元素。
为了理解这个概念,让我们用文档创建一个集合。使用文档创建集合的查询如下 -
> db.indexingForArrayElementDemo.insertOne({"StudentFavouriteSubject":["MongoDB","MySQL"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8acdca6cea1f28b7aa0816") }
在find()方法的帮助下显示集合中的所有文档。查询如下 -
> db.indexingForArrayElementDemo.find().pretty();
以下是输出 -
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }
这是 MongoDB 索引数组 &minus ;
> db.indexingForArrayElementDemo.ensureIndex({"StudentFavouriteSubject":1});
以下是输出 -
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
这是对单个数组元素的查询 -
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MongoDB"}).pretty();
以下是输出 -
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }
让我们再看一个例子。查询如下 -
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MySQL"}).pretty();
以下是输出 -
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }