我有以下表格名称作为此类结构的项目,
id name adtype created_at updated_at
1 gobba 1 2018-02-25 2018-02-25
2 manna 0 2018-04-25 2018-04-25
3 alaya 1 2017-12-28 2017-12-28
我只需要抓取一个与最新更新的记录和adtype == 1相关的结果,我会按照控制器编写代码,为此,
public function showad()
{
$projects = Vehicle::with('uploads')
->where('adtype','=',1)
->latest('updated_at');
return view('vehicles.slider')->withProjects($projects);
但这可以但不能过滤最新更新的记录。如何纠正呢?
最佳答案
尝试使用ORDER BY
和LIMIT
:
$projects = Vehicle::with('uploads')
->where('adtype', '=', 1)
->orderBy('updated_at', 'desc')
->take(1)
->get();
这应该对应于以下原始MySQL查询:
SELECT *
FROM uploads
WHERE adtype = 1
ORDER BY updated_at DESC
LIMIT 1;
关于php - 如何仅从Laravel 5.6的数据表中获取最新更新记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53240067/