Laravel. Group query by parameter and max date

введите сюда описание изображения

Мне нужно сгруппировать записи по ItemId и выбрать запись с максимальной датой. На фото начальная таблица и результат.

SELECT t1.*
FROM tbl_ItemCounters t1
    INNER JOIN (
    SELECT ItemID, MAX(Date) AS Date
    FROM tbl_ItemCounters GROUP BY ItemID
) AS max USING (ItemID, Date)

Такая конструкция работает, как я могу переписать её, используя Laravel Eloquent query builder?


Ответы (1 шт):

Автор решения: Sanya H
<?php
TblItemCounter::select('*')
    ->selectRaw('MAX(Date) as Date')
    ->groupBy('ItemId')
    ->get();
→ Ссылка