gpt4 book ai didi

MongoDB 只比较日期而不比较时间

转载 作者:IT老高 更新时间:2023-10-28 13:10:23 24 4
gpt4 key购买 nike

如何在 MongoDB 中仅使用日期而不是时间来查询日期字段?例如,如果 MongoDB 将 2015 年 7 月 7 日与 any 时间一起存储,我只想将这一天与今天的日期匹配。

在 MySQL 中,我会执行 SELECT col1, col2 FROM table WHERE DATE(date_field) = DATE(NOW());

注意 MySQL 如何有一个函数来将 date_field 更改为仅在匹配期间的日期。我可以在匹配期间在 MongoDB 中使用类似的功能执行此操作吗?像 Collection.find({ dateonly(datetimefield): dateonly(new Date() }); 或类似的东西?

我了解 Mongo 在 GMT 中存储日期/时间,因此在仅匹配日期之前,我还必须将存储的 GMT 日期+时间从 GMT 转换为本地,但为了让我开始,想知道我是否可以剥离日期匹配的时间。例如,如果现在 GMT 是 7 月 8 日 03:00,但美国东部时间是 7 月 7 日 23:00,那么我想匹配 7 月 7 日。

最佳答案

我想您应该在一天的开始和结束之间进行范围查询(或者如果您在谈论今天,则不​​结束)。像这样的

db.collection.find({
"date" : {"$gte": new Date("2015-07-07T00:00:00.000Z"),
"$lt": new Date("2015-07-08T00:00:00.000Z")}
})

关于MongoDB 只比较日期而不比较时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31272471/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com