按日期范围查询Mongoid

时间:2011-11-08 09:57:53

标签: ruby-on-rails nosql mongoid

我如何用两个日期范围写出查询的位置?唯一的条件是必须通过一个查询检索此数据。谢谢。

UPD:或如何在一个集合中结合2个查询?不是数组

2 个答案:

答案 0 :(得分:6)

您可以轻松or这两个范围:

Post.all.
     or(:created_at.gt => Time.now - 3.months, :created_at.lte => Time.now - 2.months).
     or(:created_at.gt => Time.now - 1.month, :created_at.lte => Time.now)

答案 1 :(得分:0)

可以使用 any_of 条件完成联盟。 any_of标准类似于SQL OR,别名为"或"为了便于阅读。这是如何查询两个时间范围。

date1 = Date.new(2016,2,3)
date2 = Date.new(2016,2,4)
date3 = Date.new(2016,3,3)
date4 = Date.new(2016,3,4)
User.any_of({:created_at=>  date1..date2},{:created => date3..date4})
相关问题