Рельсы разницы во времени (где ДАТА mysql)

#mysql #ruby-on-rails

#mysql #ruby-on-rails

Вопрос:

Как я могу написать это на SQL, это работает нормально, но возвращает массив, и мне нужен ActiveRecord

 scope :no_test, ->{ select{|el| (el.premium_expiration_date - 1.hour) > el.purchase_date} }
  

Что-то вроде этого

 .where('DATE(premium_expiration_date) - 3600 > DATE(purchase_date)')
  

Ответ №1:

Попробуйте date_sub

 .where('date_sub(premium_expiration_date, INTERVAL 1 HOUR) > purchase_date')