首页 > php框架 > Laravel > 正文

laravel怎么在Eloquent模型中使用whereDate和whereMonth_laravel Eloquent whereDate/whereMonth使用方法

冰火之心
发布: 2025-11-01 11:12:02
原创
777人浏览过
答案是使用 whereDate 和 whereMonth 方法可按日期或月份筛选数据,如 User::whereDate('created_at', '2024-04-05') 查询指定日期记录,User::whereMonth('created_at', 5) 查询 5 月数据,支持比较操作和链式组合条件。

laravel怎么在eloquent模型中使用wheredate和wheremonth_laravel eloquent wheredate/wheremonth使用方法

在 Laravel 的 Eloquent 模型中,你可以直接使用 whereDatewhereMonth 方法来对日期字段进行条件查询。这些方法属于 Laravel 查询构造器的一部分,适用于处理 MySQL 中的 DATE、DATETIME 类型字段。

whereDate 使用方法

当你需要根据日期(年-月-日)筛选数据时,比如查找某一天创建的所有用户:

User::whereDate('created_at', '2024-04-05')->get();
登录后复制

这会生成类似 SQL:

SELECT * FROM users WHERE DATE(created_at) = '2024-04-05';
登录后复制

你也可以使用比较操作符:

User::whereDate('created_at', '>=', '2024-01-01')->get();
登录后复制

whereMonth 使用方法

如果你只想按月份筛选,比如查找所有在 5 月注册的用户:

User::whereMonth('created_at', '5')->get();
登录后复制

支持补零写法,以下等价:

无阶未来模型擂台/AI 应用平台
无阶未来模型擂台/AI 应用平台

无阶未来模型擂台/AI 应用平台,一站式模型+应用平台

无阶未来模型擂台/AI 应用平台 35
查看详情 无阶未来模型擂台/AI 应用平台
  • whereMonth('created_at', 5)
  • whereMonth('created_at', '05')

也支持比较操作:

User::whereMonth('created_at', '>=', 3)->get(); // 第二季度及以后
登录后复制

组合使用多个日期条件

你可以链式调用这些方法实现更复杂的查询,例如查找 2024 年 4 月注册的用户:

User::whereYear('created_at', 2024)
     ->whereMonth('created_at', 4)
     ->get();
登录后复制

或者结合 whereDate 精确到天:

User::whereDate('created_at', '>=', '2024-04-01')
     ->whereDate('created_at', '<=', '2024-04-30')
     ->get();
登录后复制

注意事项

  • 这些方法底层调用的是 MySQL 的 DATE()MONTH() 函数,因此会影响索引使用效率,大数据量下建议配合日期范围优化。
  • 字段必须是合法的日期或时间类型,如 created_atupdated_at 或自定义的 datetime 字段。
  • 如果使用了访问器(accessor)修改了日期格式,需注意原始字段仍要可被数据库函数处理。

基本上就这些,Laravel 的 whereDate 和 whereMonth 让日期查询变得非常直观和简洁。

以上就是laravel怎么在Eloquent模型中使用whereDate和whereMonth_laravel Eloquent whereDate/whereMonth使用方法的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号