I am a mongo beginner, I need to do a query in an array. My configuration is like this.
[
{
"_id": ObjectId("60845dd9746d1c7a70ca55a6"),
"carName": "Peugeot 208",
"image": "images/peugeot-208.webp",
"person": "4",
"bags": "4",
"gear": "Manuel",
"price": 25,
"details": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc erat orci, gravida sed accumsan vitae, rutrum sit amet dolor. Suspendisse id diam ut lorem dapibus sollicitudin sit amet non ex. Quisque at euismod purus. Suspendisse gravida sapien ac lectus bibendum congue. Vivamus tempor ipsum id massa pellentesque, nec malesuada nibh fermentum. Cras non gravida ipsum. Mauris mollis malesuada velit ut tempus. Vivamus at velit id quam molestie lacinia. Praesent vel felis sit amet neque consectetur mollis et ut massa. Vivamus efficitur malesuada mollis. Maecenas mauris sem, laoreet eu purus luctus, lobortis maximus massa.",
"booked": [
{
"_id": ObjectId("60845dd9746d1c7a70ca55a7"),
"pickUpDate": ISODate("2021-04-30T00:00:00Z"),
"dropOffDate": ISODate("2021-05-05T00:00:00Z")
},
{
"pickUpDate": ISODate("2021-06-10T00:00:00Z"),
"dropOffDate": ISODate("2021-06-15T00:00:00Z")
}
],
"route": "peugeot-208",
"comments": [
{
"_id": ObjectId("60845dd9746d1c7a70ca55a8"),
"body": "Bilmem ne",
"date": "2021-04-23",
"name": "Fiko"
}
],
"__v": 0
},
{
"_id": ObjectId("6084633ba8a1eba43825eca4"),
"carName": "Hyundai Accent",
"image": "images/hyundai-accent.webp",
"person": "4",
"bags": "4",
"gear": "Manuel",
"price": 25,
"details": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc erat orci, gravida sed accumsan vitae, rutrum sit amet dolor. Suspendisse id diam ut lorem dapibus sollicitudin sit amet non ex. Quisque at euismod purus. Suspendisse gravida sapien ac lectus bibendum congue. Vivamus tempor ipsum id massa pellentesque, nec malesuada nibh fermentum. Cras non gravida ipsum. Mauris mollis malesuada velit ut tempus. Vivamus at velit id quam molestie lacinia. Praesent vel felis sit amet neque consectetur mollis et ut massa. Vivamus efficitur malesuada mollis. Maecenas mauris sem, laoreet eu purus luctus, lobortis maximus massa.",
"booked": [
{
"_id": ObjectId("6084633ba8a1eba43825eca5"),
"pickUpDate": ISODate("2021-04-23T00:00:00Z"),
"dropOffDate": ISODate("2021-05-01T00:00:00Z")
}
],
"route": "hyundai-accent",
"comments": [
{
"_id": ObjectId("6084633ba8a1eba43825eca6"),
"body": "Bilmem ne",
"date": "2021-04-23",
"name": "Fiko"
}
],
"__v": 0
},
{
"_id": ObjectId("60846ed9a8a1eba43825eca7"),
"carName": "Wolksvagen Polo",
"image": "images/polo.png",
"person": "4",
"bags": "4",
"gear": "Manuel",
"price": 25,
"details": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc erat orci, gravida sed accumsan vitae, rutrum sit amet dolor. Suspendisse id diam ut lorem dapibus sollicitudin sit amet non ex. Quisque at euismod purus. Suspendisse gravida sapien ac lectus bibendum congue. Vivamus tempor ipsum id massa pellentesque, nec malesuada nibh fermentum. Cras non gravida ipsum. Mauris mollis malesuada velit ut tempus. Vivamus at velit id quam molestie lacinia. Praesent vel felis sit amet neque consectetur mollis et ut massa. Vivamus efficitur malesuada mollis. Maecenas mauris sem, laoreet eu purus luctus, lobortis maximus massa.",
"booked": [
{
"_id": ObjectId("60846ed9a8a1eba43825eca8"),
"pickUpDate": ISODate("2021-05-10T00:00:00Z"),
"dropOffDate": ISODate("2021-05-20T00:00:00Z")
}
],
"route": "wv-polo",
"comments": [
{
"_id": ObjectId("60846ed9a8a1eba43825eca9"),
"body": "Bilmem ne",
"date": "2021-04-23",
"name": "Fiko"
}
],
"__v": 0
}
]
I want to query document that dropOffDate less than date that I send if any of dropOffDate in booked array matches the query.How can I do this query ? I've tried this query but it only returns me first matching result. Thank you very much.
db.collection.find({
"booked": {
$elemMatch: {
dropOffDate: {
$lt: ISODate("2021-06-05")
}
}
}
})