Ordenação de múltiplas colunas com Laravel

Gunnar CorreaGunnar Correa11/09/2020 às 19:59:00 - 263 acessos

Usando uma sequência de OrderBy podemos modificar a forma de retorno da nossa consulta.


Vamos imaginar a seguinte situação: você tem uma tabela de produtos e precisa retornar as informações em ordem alfabética e também pelo maior preço, em uma consulta SQL teríamos algo como o script abaixo.

SELECT id, nome, preco, quantidade_estoque FROM produto ORDER BY nome ASC, preco DESC

Okay, o código acima é funcional e não está errado, mas estamos usando o Eloquent e precisamos da consulta através de seus mecanismos, mas para isso, basta usar sequencialmente o método orderBy, sendo que o primeiro parâmetro corresponde ao nome da coluna e o seguindo a forma de ordenação, como DESC ou ASC, por exemplo.

Produto::orderBy('nome',  'ASC')->orderBy->('preco', 'DESC')->get();

E assim finalizamos esse breve artigo.

Nos vemos na próxima.


laravel consulta laravel order by laravel tutorial laravel php mysql order by eloquent order by consulta de dados order by multiple columns php laravel

Compartilhe nas redes sociais



Gunnar Correa

Gunnar Correa

Autodidata, Graduado em Desenvolvimento Web (FIPP), Especialista em Tecnologias na Educação (Unoeste) e Pós-graduando em Segurança da Informação (Universidade Cruzeiro do Sul). Começou seus estudos na área de programação quando era criança, e atualmente está estudando desenvolvimento de jogos. É CEO do portal SatellaSoft, criado em 2009 com o intuito de compartilhar conhecimento de forma gratuita e inédita.