Material de apoio:
1. Antes de iniciar esse tutorial, acesse a introdução da série de tutoriais clicando aqui, siga o passo a passo para usar a nossa plataforma interativa de SQL e pratique em tempo real
2. Participe do nosso canal do slack, onde você poderá tirar dúvidas sobre os tutoriais e também acessar conteúdo exclusivo do universo de dados, clicando aqui
Confira também os posts anteriores da série:
1. Introdução
2. Estrutura do SELECT
3. Filtrando valores com o WHERE
4. Agrupando valores com o GROUP BY
Os comandos ORDER BY e LIMIT acontecem no final da query e servem para alterar o resultado final dela, ordenando os valores e limitando-os, consecutivamente.
ORDER BY
A sintaxe básica do ORDER BY é a seguinte:
SELECT coluna1, SUM(coluna2)
FROM nome_tabela
WHERE coluna1 = condicao
GROUP BY coluna1
ORDER BY coluna2
Para exemplificar vamos considerar a tabela “pessoas” da nossa base de dados:

Ordenando valores em ordem ascendente
SELECT *
FROM pessoas
ORDER BY idade ASC
Por padrão o ORDER BY irá ordenar os valores de forma ascendente sem que seja necessário mais nenhum comando, porém também pode ser usada a cláusula ASC (ascendente) ao final da sentença para indicar a ordenação. No exemplo acima, estamos selecionando todas as colunas da tabela “pessoas” e ordenando-as pela coluna “idade”:

Ordenando valores em ordem descendente
SELECT *
FROM pessoas
ORDER BY idade DESC
Ao indicar ao final da sentença a cláusula DESC a ordenação será feita de forma descendente (do maior para o menor):

Ordenando valores por várias colunas
SELECT *
FROM pessoas
ORDER BY idade, id
A query acima seleciona todas as colunas da tabela “pessoas”, ordenando-as pelas colunas “idade” e “id”. Isso significa que a primeira ordenação será por idade, porém se houver mais de uma pessoa com a mesma idade, então essas pessoas serão ordenadas pela coluna “id”:

Também é possível ordenar a query por várias colunas dando ordens diferentes para cada uma:
SELECT *
FROM pessoas
ORDER BY idade DESC, id ASC
Na query acima estamos ordenando os resultados por idade de forma descendente e por id de forma ascendente:

LIMIT
O comando LIMIT tem a função de limitar as linhas que serão exibidas no resultado da query.
SELECT *
FROM pessoas
LIMIT 2
No código acima, ao usar o comando “LIMIT 2” estamos indicando que somente as duas primeiras linhas devem aparecer no resultado final da query. Note que as linhas trazidas no resultado correspondem aos ids 1 e 2:

Ao usar o comando LIMIT combinado com o comando OFFSET é possível pular as primeiras linhas que irão aparecer no resultado:
SELECT *
FROM pessoas
LIMIT 2 OFFSET 4
No caso da query acima estamos indicando que retornem apenas duas linhas a partir da linha 4. Neste caso os ids que retornam são 5 e 6, pois foram puladas todas as linhas até a quarta:

Não deixe de conferir os post anteriores da nossa série de tutoriais, e fique de olho no nosso blog para acompanhar os próximos!
E para testar a plataforma Kondado gratuitamente por 14 dias, basta clicar no link abaixo:
Publicado em 2020-11-17