繁体   English   中英

ActiveRecord:在created_at之后检索updated_at为24小时或更长时间的所有记录

[英]ActiveRecord: Retrieve all records where updated_at is 24 hours or more after created_at

我尝试使用ActiveRecord和Postgres数据库查找在创建( created_at )后至少24小时或更长时间内更新( updated_at )的所有记录。

知道怎么做到这一点?

您可以通过直接使用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") } 

您可以尝试使用以下查询

Model.where("updated_at > (Date(created_at) + integer '1')")

这是参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM