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

แบบสอบถาม MongoDB เพื่อค้นหา "ที่อยู่" สำหรับการเรียกเก็บเงินเท่ากับที่อยู่จัดส่งจากเอกสารหรือไม่


ในการตรวจสอบความเท่าเทียมกันและดึงเอกสาร ให้ใช้ $where ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสาร -

<ก่อนหน้า>> db.demo589.insertOne({deliveryAddress:"US",billingAddress:"UK"});{ "acknowledged" :true, "insertedId" :ObjectId("5e92c117fd2d90c177b5bccc")}> db.demo589.insertOne( {ที่อยู่จัดส่ง:"US",billingAddress:"US"});{ "รับทราบ" :จริง "insertedId" :ObjectId("5e92c11bfd2d90c177b5bccd")}> db.demo589.insertOne ({ที่อยู่จัดส่ง:"US",ที่อยู่สำหรับเรียกเก็บเงิน:" AUS"});{ "รับทราบ" :จริง "insertedId" :ObjectId("5e92c11ffd2d90c177b5bcce")}> db.demo589.insertOne({ที่อยู่จัดส่ง:"UK",billingAddress:"US"});{ "รับทราบ" :จริง "insertedId" :ObjectId("5e92c127fd2d90c177b5bccf")}

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

> db.demo589.find();

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

{ "_id" :ObjectId("5e92c117fd2d90c177b5bccc"), "deliveryAddress" :"US", "billingAddress" :"UK" }{ "_id" :ObjectId("5e92c11bfd2d90c177b5bccd"), "deliveryAddress" , "billingAddress" :"US" }{ "_id" :ObjectId("5e92c11ffd2d90c177b5bcce"), "deliveryAddress" :"US", "billingAddress" :"AUS" }{ "_id" :ObjectId("5e92c1275bccfd90c177b, ObjectId("5e92c1275bccfd90c177b, deliveryAddress" :"UK", "billingAddress" :"US" }

นี่คือแบบสอบถามเพื่อตรวจสอบ "ที่" ที่อยู่เรียกเก็บเงินเท่ากับที่อยู่จัดส่งและดึงเอกสาร -

> db.demo589.find( { $where:"this.deliveryAddress ==this.billingAddress" } );

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

{ "_id" :ObjectId("5e92c11bfd2d90c177b5bccd"), "deliveryAddress" :"US", "billingAddress" :"US" }