MongoDB日期范围查询

时间:2016-11-21 21:46:37

标签: node.js mongodb datetime express

我在我的应用程序中使用了node.js和Mongo DB。

我已将日期存储在MongoDB中的field(datetime)条目中:

db.collection('person').insertOne({"name": "ABC","age": "40","datetime": Date()}

此日期输出为:"datetime":"Mon Nov 21 2016 00:47:39 GMT-0500 (Eastern Standard Time)"

现在我正在尝试查找大于特定日期的所有条目。 为此,我做了以下几点:

db.collection('person').find( {'datetime':{$gt: startingdate})

其中,起始日期包含22,11,2016.

这不起作用并取出所有具有日期时间字段的记录。

我甚至尝试过使用:

startingdate = Date(22,11,2016)

startingdate = Date(2016,11,22) 

但无济于事。有人可以帮我解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

使用new Date()代替Date()

new Date()返回日期对象,而Date()返回datetime的字符串表示。

您需要将日期对象发送到MongoDB,以便它可以将日期对象转换为ISODate