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

ฉันจะทำงานกับฟิลด์อาร์เรย์ใน MongoDB เพื่อให้ตรงกับทั้งหมดได้อย่างไร


หากต้องการจับคู่ทั้งหมดใน MongoDB ให้ใช้ $all ตัวดำเนินการ $all จะเลือกเอกสารที่ค่าของเขตข้อมูลเป็นอาร์เรย์ที่มีองค์ประกอบที่ระบุทั้งหมด ให้เราสร้างคอลเลกชันที่มีเอกสาร -

<ก่อน>> db.demo695.insertOne({"ListOfValues":[100,200,500,800]});{ "acknowledged" :true, "insertedId" :ObjectId("5ea6d4c4551299a9f98c938f")}> db.demo695.insertalue({s"ListOfFues")}> :[1000,200,4000]});{ "รับทราบ" :จริง "insertedId" :ObjectId("5ea6d4cf551299a9f98c9390")}

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

> db.demo695.find();

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

{ "_id" :ObjectId("5ea6d4c4551299a9f98c938f"), "ListOfValues" :[ 100, 200, 500, 800 ] }{ "_id" :ObjectId("5ea6d4cf551299a9f98c9390"), "ListOfValues, 200, 200" 4000 ] }

ต่อไปนี้เป็นแบบสอบถามที่จะทำงานกับเขตข้อมูลอาร์เรย์และจับคู่ทั้งหมด -

> db.demo695.find({"ListOfValues":{$all:[1000,200,4000]}});

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

{ "_id" :ObjectId("5ea6d4cf551299a9f98c9390"), "ListOfValues" :[ 1000, 200, 4000 ] }