query where date = Date.today z Railsami, MySQL i Active Record
Widzę w dokumentach Active Record, że możesz zapytać o datę używając porównania większego niż / mniejszego niż. Co jednak zrobić, jeśli chcesz wybrać gdzie data = Date.today lub czy muszę zapytać, gdzie data jest większa niż wczoraj i mniej niż jutro?
Jak widać, robię dokładnie to samo w następujących zapytaniach, a zapytanie gdzie Date = dzisiaj zwraca pusty zestaw
1.9.3p286 :096 > Subscription.where("created_at = ?", Date.today).count
(0.5ms) SELECT COUNT(*) FROM `subscriptions` WHERE (created_at = '2013-01-18')
=> 0
vs.
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
Czy to właściwy sposób na zapytanie o dzisiejszą datę, czy coś mi brakuje?