Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
Return query based on date in MongoDB?
To return query based on the date in MongoDB, use date range operators like $gte, $gt, $lte, and $lt with ISODate objects to filter documents by date fields.
Syntax
db.collection.find({
"dateField": { $gte: ISODate("YYYY-MM-DDTHH:mm:ssZ") }
});
Sample Data
Let us create a collection with passenger data containing arrival dates ?
db.returnQueryFromDate.insertMany([
{
"PassengerName": "John",
"PassengerAge": 23,
"PassengerArrivalTime": ISODate("2018-03-10T14:45:56Z")
},
{
"PassengerName": "Larry",
"PassengerAge": 21,
"PassengerArrivalTime": ISODate("2018-05-19T11:10:23Z")
},
{
"PassengerName": "Mike",
"PassengerAge": 24,
"PassengerArrivalTime": ISODate("2018-08-25T16:40:12Z")
},
{
"PassengerName": "Carol",
"PassengerAge": 26,
"PassengerArrivalTime": ISODate("2019-01-29T09:45:10Z")
}
]);
{
"acknowledged": true,
"insertedIds": [
ObjectId("5c8a57be9064dcd4a68b70e4"),
ObjectId("5c8a57bf9064dcd4a68b70e5"),
ObjectId("5c8a57bf9064dcd4a68b70e6"),
ObjectId("5c8a57bf9064dcd4a68b70e7")
]
}
Example: Query Documents After Specific Date
Find all passengers who arrived on or after May 19, 2018 ?
db.returnQueryFromDate.find({
"PassengerArrivalTime": { $gte: ISODate("2018-05-19T11:10:23Z") }
});
{
"_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")
}
Date Range Operators
| Operator | Description | Example |
|---|---|---|
$gte |
Greater than or equal | Date >= specified date |
$gt |
Greater than | Date > specified date |
$lte |
Less than or equal | Date |
$lt |
Less than | Date |
Conclusion
Use MongoDB's date range operators with ISODate objects to efficiently query documents based on date conditions. The $gte, $gt, $lte, and $lt operators provide flexible date filtering capabilities.
Advertisements
