陣列索引或索引 MongoDB 中的子項以獲取值


首先,使用文件建立集合並使用 ensureIndex() 建立索引 −

> db.demo323.insertOne({"details":{"Name":"Chris","Age":34}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e51157af8647eb59e56206e")
}
> db.demo323.insertOne({"details":{"Name":"David","Age":31}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e511581f8647eb59e56206f")
}
> db.demo323.insertOne({"details":{"Name":"Bob","Age":28}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e511589f8647eb59e562070")
}
> db.demo323.ensureIndex({"details.Name":1});
{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 2,
   "numIndexesAfter" : 3,
   "ok" : 1
}

使用 find() 方法顯示集合中的所有文件 −

> db.demo323.find();

這將產生以下輸出 −

{ "_id" : ObjectId("5e51157af8647eb59e56206e"), "details" : { "Name" : "Chris", "Age" : 34 } }
{ "_id" : ObjectId("5e511581f8647eb59e56206f"), "details" : { "Name" : "David", "Age" : 31 } }
{ "_id" : ObjectId("5e511589f8647eb59e562070"), "details" : { "Name" : "Bob", "Age" : 28 } }

以下查詢用於從陣列中查詢值 −

> db.demo323.find({"details.Name":"Bob"});

這將產生以下輸出 −

{ "_id" : ObjectId("5e511589f8647eb59e562070"), "details" : { "Name" : "Bob", "Age" : 28 } }

更新時間: 02-Apr-2020

95 次瀏覽

開啟你的 職業 生涯

完成課程獲取認證

開始學習
廣告
© . All rights reserved.