【发布时间】:2018-03-14 18:19:38
【问题描述】:
db.checkins.aggregate
([{'$match':{"checkinData.time":
{"$gt":ISODate("2017-08-31T18:30:00.000Z"),
"$lte":ISODate("2017-08-31T20:00:00.000Z")}}},
{"$project":{'dte': {"$dateToString":
{format: "%Y-%m-%d", date:"$checkinData.time"}
}
}}
])
从数据库返回的数据很好,这意味着下一个日期(2017/09/01)的所有数据返回。 但问题是 “dte”字段的值显示的是上一个日期 (2017-08-31)
但我必须显示“dte”的值是下一个日期(2017-09-01)。
我用过 $dateToString 和 $subString
{"$project":{"dte":{"$substr":["$checkinData.time",0,10]},
同样返回2017-08-31
在 mongoDB 中是否有任何方法或查询来显示下一个日期。
【问题讨论】:
标签: node.js mongodb mongoose aggregation-framework