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

จะสอบถามเอกสารใน MongoDB เปรียบเทียบฟิลด์จากอาร์เรย์ได้อย่างไร


หากต้องการเปรียบเทียบฟิลด์จากอาร์เรย์ ให้ใช้ $gt และ $lt ให้เราสร้างคอลเลกชันที่มีเอกสาร -

<ก่อนหน้า>> db.demo147.insertOne({"Details":[{"Score":45},{"Score":46}]});{ "acknowledged" :true, "insertedId" :ObjectId("5e32fa21fdf09dd6d08539be ")}> db.demo147.insertOne({"Details":[{"Score":65},{"Score":86}]});{ "รับทราบ" :จริง "insertedId" :ObjectId("5e32fa40fdf09dd6d08539bf ")}

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

> db.demo147.find().pretty();

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

{ "_id" :ObjectId("5e32fa21fdf09dd6d08539be"), "Details" :[ { "Score" :45 }, { "Score" :46 } ]}{ "_id" :ObjectId("5e32fa40fdf09dd6d08539bf"), รายละเอียด" :[ { "คะแนน" :65 }, { "คะแนน" :86 } ]}

นี่คือวิธีการสืบค้นเอกสารใน MongoDB เปรียบเทียบเขตข้อมูลจากอาร์เรย์ -

> db.demo147.find({ 'Details.Score':{ $gt:45, $lt:50 }});

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

{ "_id" :ObjectId("5e32fa21fdf09dd6d08539be"), "รายละเอียด" :[ { "Score" :45 }, { "Score" :46 } ] }