如何从MongoDB中的时间戳创建ISODate()?

时间:2016-05-31 11:19:03

标签: javascript mongodb datetime

我正在尝试从时间戳创建一个ISODate(),但我无法。

我的意思是,想象你想让当前日期少于7天,那么我想做的就像是

ISODate(ISODate().getTime() - 1000 * 3600 * 24 * 7).toISOString().substring(0,10)

没关系,但是我得到了1464-10-23 ......

我试图在没有new Date()的情况下做到这一点!

对我来说这很重要因为,据我所知,这是我能够进行我需要的查询的唯一方法(我在数据库上有dd / mm / yyyy字符串日期)和聚合(我非常mongo初学者)

1 个答案:

答案 0 :(得分:0)

您的解决方案不起作用,因为ISODate构造函数只接受字符串参数,而不是时间戳。但是,您可以在shell中使用Date

> new Date((new Date()).getTime() - 1000 * 3600 * 24 * 7).toISOString().substring(0,10)
2016-05-24
shell中的

Date个对象被ISODate包裹,所以这仍然可以用于你想做的任何事情。

> new Date((new Date()).getTime() - 1000 * 3600 * 24 * 7)
ISODate("2016-05-24T15:31:48.335Z")