date - 如何选择具有最新日期的所有值 Laravel 5.8
问题描述
我正在尝试获取具有最新日期的所有行
我只想获得第 3 行和第 4 行
当我使用这个eloquent
查询时:
$items = Purchase::whereYear('created_at', '=', $year)
->whereMonth('created_at', '=', $month)
->where('created_at', Purchase::max('created_at'))
->get();
return $items;
然而,这就是我得到的:
[{"id":4,"itemid":1,"price":"1.60","quantity":4,"created_at":"2019-09-14 08:39:31","updated_at":" 2019-09-14 08:39:31"}]
解决方案
您必须使用->whereDate()
功能
$lastDate = Purchase::max('created_at')->format('Y-m-d');
$items = Purchase::whereDate('created_at', $lastDate)->get();
编辑:
$lastDate = Carbon::parse(Purchase::max('created_at'))->format('Y-m-d');
$items = Purchase::whereDate('created_at', $lastDate)->get();
推荐阅读
- java - 如何将一个类中的字符串结果添加到另一个类中的字符串列表中?
- c++ - 打开后如何聚焦opencv窗口?
- r - 在标点符号之间提取字符串(如果存在)
- python - 在电子表格中我称为“Bio”的列中删除带有“hate”一词的行
- javascript - 如何使用 javascript 使工作图像滑块工作?
- sql - DATEDIFF 约束
- google-apps-script - 如何使用谷歌脚本在两行中检测重复值?
- java - 如何将 @JsonConverter 与 Genson 一起使用?
- java - FXML ScrollPane 未在其完整窗口上显示子级
- javascript - 对象值相互传播