如何比较ReactiveMongo BSON查询中的日期?

时间:2014-10-01 13:04:17

标签: mongodb date bson reactivemongo

我在没有Play fremework的情况下使用ReactiveMongo。

我正在尝试编写以下简单的MongoDB查询的等价物:

db.oplog.rs.find({"o.TimeCreated":{"$gt": ISODate("2014-09-30T10:00:00.000Z")}})

我尝试过这样的事情:

val query = BSONDocument(
        "o.TimeCreated" -> BSONDocument("$gt" -> BSONDateTime(ts))) // ts is the timestamp corresponding to the date "2014-09-30T10:00:00.000Z"

希望“$ gt”运算符可用于比较两个BSONDateTime对象,假设“o.TimeCreated”的值将在内部表示为BSONDateTime对象。

但我似乎无法弄清楚如何使查询工作(没有返回数据)。

有什么建议吗?谢谢!

1 个答案:

答案 0 :(得分:0)

我可以建议您尝试一些选项:

  • 您可能希望在查询中尝试使用BSONTimestamp而不是BSONDateTime
  • oplog.rs集合中的文档是否具有名为" o.TimeCreated"?
  • 的顶级对象
  • 集合中是否有一个对象可以使用您使用的时间戳来满足查询?