Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

เป็นไปได้ไหมที่จะส่งคืนรายการค่าเฉพาะจากการสืบค้นใน MongoDB?


หากต้องการส่งคืนรายการค่าเฉพาะ ให้ใช้ map() ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo195.insertOne({"Subject":"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3af3f203d395bdc21346d4")
}
> db.demo195.insertOne({"Subject":"MongoDB"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3af3f703d395bdc21346d5")
}
> db.demo195.insertOne({"Subject":"Java"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3af3fa03d395bdc21346d6")
}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo195.find();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" : ObjectId("5e3af3f203d395bdc21346d4"), "Subject" : "MySQL" }
{ "_id" : ObjectId("5e3af3f703d395bdc21346d5"), "Subject" : "MongoDB" }
{ "_id" : ObjectId("5e3af3fa03d395bdc21346d6"), "Subject" : "Java" }

ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนรายการของค่าเฉพาะจากการสืบค้น -

> db.demo195.find().map(function(doc){ return doc.Subject });

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

[ "MySQL", "MongoDB", "Java" ]