mongo元素按日期匹配



我试图在mongodb中查找2020-11-25T0:00.000Z 之前的记录

每条记录都有一个crawls数组,其中存储了每条爬网的日期。

现在此查询返回[]

我该如何正确地查询数据库以获得预期的记录?

//record in the db
"_id": "a137f2c46f4611ecd83e5a36bda66813b79f057c",
"company_name": "test",
"updatedAt": {
"$date": "2020-11-29T19:56:08.507Z"
},
"flagged": true,
"crawling": false,
"crawls": [{
"$date": "2020-12-01T22:32:37.575Z"
}, {
"$date": "2020-12-01T22:38:43.826Z"
}, {
"$date": "2020-12-01T22:39:39.702Z"
}, {
"$date": "2020-12-05T22:32:37.575Z"
}]

//my query
let res = await mongo.db('_businesses').collection('businesses').find(
{
crawls: {
$elemMatch: {
$lte: '2020-11-25T00:00:00.000Z'
}
}
}
)
//res = []

您可以使用ISODate。例如:

"$lte" : ISODate("2020-11-25T00:00:00.000Z")

最新更新