Syntax error Return query based on date in MongoDB?

Return query based on date in MongoDB?



To return query based on the date in MongoDB, let us take an example.

To understand the concept, let us create a collection with the document. The query to create a collection with a document is as follows −

> db.returnQueryFromDate.insertOne({"PassengerName":"John","PassengerAge":23,"PassengerArrivalTime":new ISODate("2018-03-10 14:45:56")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8a57be9064dcd4a68b70e4")
}
> db.returnQueryFromDate.insertOne({"PassengerName":"Larry","PassengerAge":21,"PassengerArrivalTime":new ISODate("2018-05-19 11:10:23")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8a57bf9064dcd4a68b70e5")
}
> db.returnQueryFromDate.insertOne({"PassengerName":"Mike","PassengerAge":24,"PassengerArrivalTime":new ISODate("2018-08-25 16:40:12")});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8a57bf9064dcd4a68b70e6")
}
>db.returnQueryFromDate.insertOne({"PassengerName":"Carol","PassengerAge":26,"PassengerArrivalTime":new ISODate("2019-01-29 09:45:10")});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8a57bf9064dcd4a68b70e7")
}

Display all documents from a collection with the help of find() method. The query is as follows −

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

The following is the output −

{
   "_id" : ObjectId("5c8a57be9064dcd4a68b70e4"),
   "PassengerName" : "John",
   "PassengerAge" : 23,
   "PassengerArrivalTime" : ISODate("2018-03-10T14:45:56Z")
}
{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e5"),
   "PassengerName" : "Larry",
   "PassengerAge" : 21,
   "PassengerArrivalTime" : ISODate("2018-05-19T11:10:23Z")
}
{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e6"),
   "PassengerName" : "Mike",
   "PassengerAge" : 24,
   "PassengerArrivalTime" : ISODate("2018-08-25T16:40:12Z")
}
{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e7"),
   "PassengerName" : "Carol",
   "PassengerAge" : 26,
   "PassengerArrivalTime" : ISODate("2019-01-29T09:45:10Z")
}

Here is return query based on date. The records with a date greater than 2018-05-19T11:10:23Z will be displayed −

> db.returnQueryFromDate.find({"PassengerArrivalTime" : { $gte : new ISODate("2018-05-19T11:10:23Z") }}).pretty();

The following is the output −

{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e5"),
   "PassengerName" : "Larry",
   "PassengerAge" : 21,
   "PassengerArrivalTime" : ISODate("2018-05-19T11:10:23Z")
}
{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e6"),
   "PassengerName" : "Mike",
   "PassengerAge" : 24,
   "PassengerArrivalTime" : ISODate("2018-08-25T16:40:12Z")
}
{
   "_id" : ObjectId("5c8a57bf9064dcd4a68b70e7"),
   "PassengerName" : "Carol",
   "PassengerAge" : 26,
   "PassengerArrivalTime" : ISODate("2019-01-29T09:45:10Z")
}
Updated on: 2019-07-30T22:30:25+05:30

330 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements