Active Record のドキュメントを見ると、より大きい / より小さい比較を使用して日付を照会できます。ただし、where date = Date.today を選択したい場合、または日付が昨日より大きく明日より小さい場所をクエリする必要がある場合はどうすればよいでしょうか?
ご覧のとおり、次のクエリでまさにそれを行っており、Date = today が空のセットを返す場所をクエリしています。
1.9.3p286 :096 > Subscription.where("created_at = ?", Date.today).count
(0.5ms) SELECT COUNT(*) FROM `subscriptions` WHERE (created_at = '2013-01-18')
=> 0
対。
1.9.3p286 :098 > Subscription.where("expiration_date < ? AND expiration_date > ?", Date.today + 1, Date.today - 1).count
(0.4ms) SELECT COUNT(*) FROM `subscriptions` WHERE (expiration_date < '2013-01-19' AND expiration_date > '2013-01-17')
=> 1
これは今日の日付を照会する適切な方法ですか、それとも何か不足していますか?