MongoDB query to find “where” Billing Address is Equal to Delivery Address from documents?

MongoDBDatabaseBig Data Analytics

To check equality and fetch the documents, use $where in MongoDB. Let us create a collection with documents −

> db.demo589.insertOne({deliveryAddress:"US",billingAddress:"UK"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e92c117fd2d90c177b5bccc")
}
> db.demo589.insertOne({deliveryAddress:"US",billingAddress:"US"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e92c11bfd2d90c177b5bccd")
}
> db.demo589.insertOne({deliveryAddress:"US",billingAddress:"AUS"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e92c11ffd2d90c177b5bcce")
}
> db.demo589.insertOne({deliveryAddress:"UK",billingAddress:"US"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e92c127fd2d90c177b5bccf")
}

Display all documents from a collection with the help of find() method −

> db.demo589.find();

This will produce the following output −

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

Here is the query to check “where” Billing Address is Equal to Delivery Address and fetch the documents −

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

This will produce the following output −

{ "_id" : ObjectId("5e92c11bfd2d90c177b5bccd"), "deliveryAddress" : "US", "billingAddress" : "US" }
raja
Updated on 15-May-2020 06:48:31

Advertisements