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

ค้นหาเอกสารที่มีคะแนนสูงสุดใน MongoDB

เพื่อหาเอกสารที่มีคะแนนสูงสุด ให้ใช้ sort() แบบ descending (ค่าลบ) ร่วมกับ limit(1)

สร้างคอลเลกชันพร้อมเอกสาร:

> db.demo241.insertOne({"Marks":67}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e441f729af932883c61ea40") } 
> db.demo241.insertOne({"Marks":89}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e441f769af932883c61ea41") } 
> db.demo241.insertOne({"Marks":78}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e441f789af932883c61ea42") }

แสดงเอกสารทั้งหมด:

> db.demo241.find();

ผลลัพธ์:

{ "_id" : ObjectId("5e441f729af932883c61ea40"), "Marks" : 67 } 
{ "_id" : ObjectId("5e441f769af932883c61ea41"), "Marks" : 89 } 
{ "_id" : ObjectId("5e441f789af932883c61ea42"), "Marks" : 78 }

คำสั่งค้นหาเอกสารที่มีคะแนนสูงสุด:

> db.demo241.find().sort({Marks:-1}).limit(1);

ผลลัพธ์ - ได้เฉพาะเอกสารที่มี Marks = 89 (ค่าสูงสุด):

{ "_id" : ObjectId("5e441f769af932883c61ea41"), "Marks" : 89 }