我正在尝试找出如何使用 mongoose 进行特定查询。我在 mongodb 中有这样的东西:
{ "_id" : 1, "modificationDate" : ISODate("2013-06-26T18:57:30.012Z") }
{ "_id" : 2, "modificationDate" : ISODate("2013-06-26T18:57:35.012Z") }
我想获取实际日期和 modifyDate 之间的差异大于 5 天的所有对象。
计算 5 天前的截止时间,然后find
使用$lt
运算符和计算的截止时间执行 a:
var cutoff = new Date();
cutoff.setDate(cutoff.getDate()-5);
MyModel.find({modificationDate: {$lt: cutoff}}, function (err, docs) { ... });
如果您需要在两个日期之间查询,您可以使用 $gte = 大于等于和 $lte = 小于等于日期格式“YYYY-MM-DD”进行查询
const results = await MyModel.find(
{
date: {
$gte: "2021-01-20",
$lte: "2021-02-15",
}
}
)
此示例将在 2021 年 1 月 20 日至 2021 年 2 月 15 日期间查询 MyModel。