gpt4 book ai didi

activerecord - 查找最接近当前日期创建的记录

转载 作者:行者123 更新时间:2023-12-04 17:24:28 26 4
gpt4 key购买 nike

我想获取包含 created_at 的记录最接近当前日期的日期。我如何使用事件记录来做到这一点 where条款?

最佳答案

您可以使用以下内容找到过去最接近的记录:

Record.where("created_at <= ?", Date.today).order_by("created_at DESC").limit(1)

同样,你可以在 future 拥有最近的记录
Record.where("created_at >= ?", Date.today).order_by("created_at ASC").limit(1)

然后比较哪个最接近当前日期......

可能有一个解决方案可以通过单个请求来完成,但我找不到方法(如果您使用的是 SQL 服务器,则有一种方法 DATEDIFF 可以提供帮助)。

更新 : 感谢米莎

如果您确定所有 created_at在过去,您正在寻找最后创建的记录,可以写入
Record.order("created_at").last

更新

要获取与最后一条记录相同的日期创建的所有记录:
last_record_date = Record.max(:created_at)
Record.where(:created_at => (last_record_date.at_beginning_of_day)..(last_record_date.end_of_day))

关于activerecord - 查找最接近当前日期创建的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12294272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com