【发布时间】:2020-11-21 13:35:42
【问题描述】:
我进行了查询,查找日期字段在下一分钟内的所有条目:
import { addMinutes, format } from 'date-fns'
date: {
$gte: new Date(),
$lt: (addMinutes(new Date(), 1))
}
但是,这仅适用于日期与今天相同的情况。现在,如果我希望无论日期字段中的哪一天都可以正常工作,我该怎么办?
用例如下:创建文档时,日期字段设置为 Date.now()。如果没有年、月或日,我想获取从现在起在一分钟内创建的所有文档。这也应该包含几个小时和几天,所以如果现在是 23:59:30,我想找到在任何一天 23:59:30 或更晚或 00:00:30 之前创建的所有文档。
基本上我只想从我的日期字段中提取小时分钟和秒,并使用它们。但我找不到办法。
这是一个示例文档:
"_id": "5f2447d259aaf231d8dc1d3b",
"date": "2020-08-07T12:22:00.000Z",
"enabled": true,
【问题讨论】:
-
一分钟后只有今天才对?真的不清楚。请通过使用可能包含您拥有的示例文档和预期输出的用例编辑问题来解释更多信息。
-
@ambianBeing 不仅是今天,更新了问题
-
@PointyPook 所以你在
date字段级别存储毫秒,即Date.now()正确吗?您能否在问题中发布一个示例文档以供使用。 -
@ambianBeing 添加!
-
嗯,这个 qeury 比我想象的要多一点和冗长 play link。有意将阶段保持为独立且冗长的理解,并提供 cmets。如果这对您有用,将作为带有描述的答案发布。 (您可以通过添加
$project阶段来删除不需要的字段)。
标签: mongodb