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

Obtendo mais linhas por grupo usando groupBy no Eloquent


Uma das maneiras de você conseguir o que está tentando fazer é:
Deal:where('status', 'active')
    ->get()
    ->groupBy('type')
    ->map(function($deal) {
        return $deal->take(3);
    });

Claro, você precisa verificar se a consulta retorna null ou empty objetos e observe que a consulta retorna todos os objetos ativos Deal (s) (a filtragem acontece na Collection ) que pode não ser eficiente se houver muitos Deal (s)