我尝试使用ActiveRecord和Postgres数据库创建后至少24小时或更长时间(created_at
)更新(updated_at
)的所有记录。ActiveRecord:检索updated_at在created_at后24小时或更长时间的所有记录
任何想法如何做到这一点?
我尝试使用ActiveRecord和Postgres数据库创建后至少24小时或更长时间(created_at
)更新(updated_at
)的所有记录。ActiveRecord:检索updated_at在created_at后24小时或更长时间的所有记录
任何想法如何做到这一点?
一个范围,您可以通过检查使用hours
直接的条件给出更明确的条件,
Model.where("updated_at >= created_at + interval '24' hour")
返回查询,
SELECT
型号.* FROM
型号WHERE (updated_at >= (created_at + interval '22' hour))
经过此查询和我的车型,希望对你的作品太其做工精细,
这是正确的。 –
你可以写这个
scope :scope_name , ->() { where("updated_at::date > created_at::date") }
代码“至少在创建后一天”的位置? :) –
老兄我已经使用大于号,所以日期只会更大,如果它是创建后一天。希望它是有道理的。谢谢 –
为什么两个查询返回不同的结果呢? – Martin
呼叫像'模型。 where(“updated_at> =(created_at + interval'1'day)”)' –