【发布时间】:2018-02-07 08:46:01
【问题描述】:
我在数据库中有日期时间值如下的文档:
{
"_id" : ObjectId("5a66fa22d29dbd0001521023"),
"exportSuccessful" : true,
"month" : 0,
"week" : 4,
"weekDay" : "Mon",
"dateTime" : ISODate("2018-01-22T09:02:26.525Z"),
"__v" : 0
}
我想:
查询给定日期的数据库,如果日期匹配(我不关心时间),则返回包含 dateTime 的文档。这主要是为了在插入该日期还没有的文档之前进行测试。在上面的示例中,如果我给定的日期是
2018-01-22,我希望返回文档。从数据库中检索具有不同日期的所有文档(同样,我不关心时间部分)。如果有两个文档的日期相同(但时间不同),则返回第一个。
据我了解,Mongo 的 ISODate 类型不允许我只存储一个日期,它总是必须是一个 dateTime 值。而在我这边,我无法控制数据库中的内容。
【问题讨论】:
-
给定的日期是字符串值还是时间设置为零的日期值?
-
@Veeram 我可以两者都做,我在客户端使用 moment.js 进行日期操作。