我正在使用oauth_refresh_token表,如下所示:
var OAuthRefreshToken = myDb.define("oauth_refresh_token", {
refresh_token: {type: sequelize.STRING, primaryKey: true}
client_id: {type: sequelize.STRING}
});
Sequelize会自动创建列" created_at"和" updated_at"对我来说,数据类型为:"带时区的时间戳"。
现在,当我想询问如何比较两个日期时。如果它是在过去24小时创建的,我想获得这种类型的Object。 到目前为止我有这样的事情:
var currentTimeMinus24Hours = new Date()-24*60*60*1000;
return OAuthRefreshToken.find(
where: {
refresh_token: token
updated_at: { gt: currentTimeMinus24Hours }
}
)
如果我执行此代码,我会得到一个运算符不存在的异常:带时区的时间戳> BIGINT。有道理,但任何想法我怎么能使它工作。如果它对你有帮助。我正在使用postgres数据库。
答案 0 :(得分:4)
我使用了momentjs库
调用moment().format()
将以timestamptz格式为您提供日期时间。
你应该使用片刻的原因也很多,因为它是一个可靠的库,可以解决与操作时间相关的许多问题。
但我有兴趣看看是否还有其他香草解决方案。