Ruby on rails 3 如何只查询日期而不查询时间?

Ruby on rails 3 如何只查询日期而不查询时间?,ruby-on-rails-3,Ruby On Rails 3,我正在开发一个Rails 3.2 web应用程序,在这个应用程序中,我得到了一个查询,找到了所有在2周前创建并在特定日期(确切地说是1个月前)付款的帐户。 问题是,即使日期正确,我的查询也找不到任何内容。我想这和时间有关。如何忽略查询中的时间而只使用日期 created_at = Time.now - 2.weeks paid_at = Time.now - 1.month Account.where(["created_at >= ? AND paid_at = ?", created

我正在开发一个Rails 3.2 web应用程序,在这个应用程序中,我得到了一个查询,找到了所有在2周前创建并在特定日期(确切地说是1个月前)付款的帐户。 问题是,即使日期正确,我的查询也找不到任何内容。我想这和时间有关。如何忽略查询中的时间而只使用日期

created_at = Time.now - 2.weeks
paid_at = Time.now - 1.month

Account.where(["created_at >= ? AND paid_at = ?", created_at.beginning_of_day, paid_at.beginning_of_day]).select(:id)
我也试过了,结果也一样:

Account.where(["created_at >= ? AND paid_at = ?", 2.weeks.ago, 1.month.ago]).select(:id)
我认为我在这方面做得对,但我也需要使用部分已创建的_,在这个查询中它似乎被忽略了:

Account.where('created_at > ? AND paid_at BETWEEN ? AND ?', 2.years.ago, 1.month.ago.beginning_of_day, 1.month.ago.end_of_day)
使用DATE()尝试此操作

Account.where("DATE(created_at) >= ? AND DATE(paid_at) = ?", created_at, paid_at).select(:id)