【发布时间】:2011-11-08 09:57:53
【问题描述】:
如何编写两个日期范围的查询?唯一的条件是必须通过一个查询来检索此数据。谢谢。
UPD:或者如何将 2 个查询合并到一个集合中?不是数组
【问题讨论】:
标签: ruby-on-rails nosql mongoid
如何编写两个日期范围的查询?唯一的条件是必须通过一个查询来检索此数据。谢谢。
UPD:或者如何将 2 个查询合并到一个集合中?不是数组
【问题讨论】:
标签: ruby-on-rails nosql mongoid
你可以轻松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)
【讨论】:
联合可以使用 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})
【讨论】: