Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Eloquente encontrando a linha com o valor máximo com agrupamento


usando o Raw Builder, você pode usar abaixo, se estiver usando eloquente, apenas remova os nomes das tabelas e substitua pela instância do modelo
DB::table(DB::raw('shop as s1'))
   ->join(
       DB::raw('(SELECT article, MAX(price) AS price FROM shop GROUP BY article) as s2'), 
     function($query) {
       $query->on('s1.article', '=', 's2.article')
             ->on('s1.price', '=', 's2.price');
     })->get();