search
LoginSignup
2

Rails 【where】日付・時間を範囲指定する際の注意点

行いたいこと

  • where句を使用し、モデルのdeadline_onカラムから期日が近いデータを取り出したい。

完成形のコード

model.where(deadline_on: Date.today..Time.now.end_of_day + (2.days))

元々書いていたコード

model.where(deadline_on: Time.now.end_of_day + (2.days)..Date.today)

沼ったポイント

  • 上記の元々書いていたコードでirb上でSQL文を確認していた際、BETWEEN節があったため問題ないと考えていた。
  • 実際には、完成形のコードのように日時が早いものを先に後のものを後ろに記載しないと○日~○日までというような範囲指定はされないので注意が必要。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2