gpt4 book ai didi

Laravel/Eloquent 和比较日期

转载 作者:行者123 更新时间:2023-12-04 05:32:17 37 4
gpt4 key购买 nike

我想返回数据库表中一天或更短的所有行。我正在使用 Laravel 4。这是我尝试过的:

$date = date('Y-m-d H:i:s');
return MainContact::where(DATEDIFF('timestamp', $date), '<=', 1)->get();

这不起作用。我阅读了文档,似乎您无法传递 Laravel MySQL 函数。 timestamp是一个日期时间字段。如何在 Laravel 4 中比较这些日期?

最佳答案

user1977808 给你的答案并不好,因为 MySQL 不能在时间戳列上使用索引,因为它必须为每一行计算 DATE_SUB 函数的输出。避免这样的查询,他们每次都必须处理整个表!

这样的事情怎么样:

return MainContact::where('timestamp', '>=', time() - (24*60*60))->get();

我把 >=在那里,因为你说“一天或更短”,所以他们的时间戳必须晚于昨天。

关于Laravel/Eloquent 和比较日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14346431/

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