【发布时间】:2016-06-06 11:20:54
【问题描述】:
我想获取在 2016 年 6 月 6 日星期一 13:54:32 之后发布的所有新闻。我试过这个:
db.collection.find({'date':{$gt:'Mon, 06 Jun 2016 13:54:32'}})
但我收到了无效的语法错误。
【问题讨论】:
-
第一个问题是您使用单引号。 (') 而不是 (")。其次,您在末尾缺少一个大括号
我想获取在 2016 年 6 月 6 日星期一 13:54:32 之后发布的所有新闻。我试过这个:
db.collection.find({'date':{$gt:'Mon, 06 Jun 2016 13:54:32'}})
但我收到了无效的语法错误。
【问题讨论】:
做这样的事情
db.collection.find({"date" : { $gt : "Mon, 06 Jun 2016 13:54:32" }});
干杯!
【讨论】:
我认为您必须执行类似 $gt: new Date("Mon, 06 Jun 2016 13:54:32Z") 或 ISODate(...) 之类的操作,以允许 mongodb 将其与 BSON 表示进行比较存储。
【讨论】:
似乎是语法错误。检查以下代码:
db.collection.find({"date":{$gt:"Mon, 06 Jun 2016 13:54:32"}})
如果您是从 python/django 代码连接,上述查询可能无法再次工作。然后在下面使用:
db.collection.find({"date":{"$gt":"Mon, 06 Jun 2016 13:54:32"}})
还要查看您是如何存储日期的,如果它是 ISO 格式,则使用:
db.collection.find({"date":{$gt:ISODate("Mon, 06 Jun 2016 13:54:32")}})
【讨论】:
这是一个语法错误。
你这样写 db.collectionName.find({"AttributeName":{$gt:"你的日期格式"}}); 在你的情况下,它应该是这样的 db.collection.find({"date":{$gt:"Mon, 06 Jun 2016 13:54:32"}})
【讨论】: