Computer >> Máy Tính >  >> Lập trình >> MongoDB

Tìm nạp các giá trị trường cụ thể trong MongoDB

Để tìm nạp các giá trị trường cụ thể, hãy sử dụng toán tử $ in. $ In chọn các tài liệu trong đó giá trị của một trường bằng bất kỳ giá trị nào trong mảng được chỉ định.

Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.indexesDemo.createIndex({"StudentFirstName":1});
{
   "createdCollectionAutomatically" : true,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}
> db.indexesDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Smith"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06de4d25ddae1f53b621dd")
}
> db.indexesDemo.insertOne({"StudentFirstName":"Chris","StudentLastName":"Brown"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06de5825ddae1f53b621de")
}
> db.indexesDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Doe"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06de6725ddae1f53b621df")
}
> db.indexesDemo.insertOne({"StudentFirstName":"David","StudentLastName":"Miller"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06de7225ddae1f53b621e0")
}

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.indexesDemo.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e06de4d25ddae1f53b621dd"), "StudentFirstName" : "John", "StudentLastName" : "Smith" }
{ "_id" : ObjectId("5e06de5825ddae1f53b621de"), "StudentFirstName" : "Chris", "StudentLastName" : "Brown" }
{ "_id" : ObjectId("5e06de6725ddae1f53b621df"), "StudentFirstName" : "John", "StudentLastName" : "Doe" }
{ "_id" : ObjectId("5e06de7225ddae1f53b621e0"), "StudentFirstName" : "David", "StudentLastName" : "Miller" }

Sau đây là truy vấn tới các chỉ mục -

> db.indexesDemo.find(
... { StudentFirstName: { $in: [ "John", "David" ] } },
... { _id: 0, StudentLastName: 0 }
... );

Điều này sẽ tạo ra kết quả sau -

{ "StudentFirstName" : "David" }
{ "StudentFirstName" : "John" }
{ "StudentFirstName" : "John" }