我读过必须使用的$ gt属性。无法解决这个问题。让我们说我有一些像这样的mongo数据:
{
"startTime" : "Sun 25 Jan 2015 07:14:26 GMT",
"endTime" : "",
"jobStatus" : "JOBCANCELLED",
"uiState" : "HISTORY",
"priority" : "SILVER"
}
我的开始时间是如何在我的Mongo中保存的。如果我想获得开始时间大于今天的所有工作的状态,我该怎么做?
db.getCollection('jobsCollection').find({"startTime":{$gt: "What here?"})
答案 0 :(得分:1)
首先,您需要将startTime从String格式转换为日期时间格式。
从mongo shell做:
db.jobsCollection.find().forEach(function(doc){doc.startTime = new Date(doc.startTime);db.jobsCollection.save(doc)});
然后您可以编写大于日期的查询:
db.jobsCollection.find({"startTime":{$gt: new Date("2014-02-10")});
如果您遇到任何问题,请告诉我。