MySQL – ORDER BY – Consultas com ordenação – 13
Consultas com Ordenação – cláusula ORDER BY
A palavra-chave ORDER BY é usada para ordenar o conjunto-resultado de registros em um consulta SQL, tanto de forma ascendente quanto descendente.
Sintaxe:
SELECT colunas FROM tabela ORDER BY coluna_a_ordenar;
Podemos configurar a ordenação como ascendente (crescente) ou descendente (decrescente) com o uso das palavras ASC ou DESC:
- ASC – Ordem ascendente
- DESC – Ordem descendente (inversa)
Ordem de Classificação por Tipo de Dados
A ordem padrão de classificação do ORDER BY (ASC) para os diversos tipos de dados é a seguinte:
- Valores numéricos são exibidos com os menores valores primeiro (do menor para o maior).
- Valores de data são mostrados com os valores menores primeiro, o que significa as datas mais antigas (do mais antigo para o mais recente).
- Valores de caracteres são exibidos em ordem alfabética.
- Quando houver valores nulos (NULL), eles serão mostrados por último (em sequências descendentes, com DESC, são mostrados primeiro
É possível classificar os dados da consulta usando uma coluna que não esteja presente na lista de colunas da declaração SELECT.
Também é possível ordenar os resultados da consulta usando mais de uma coluna. Para isso, basta listar as colunas na cláusula ORDER BY, separadas por vírgulas. Os resultados serão ordenados pela primeira coluna na lista, e então pela segunda coluna, e assim por diante.
Pode-se ordenar qualquer das colunas listadas em qualquer ordem, por exemplo colunas em ordem ascendente e colunas em ordem descendente, bastando para isso suceder o nome da coluna que será classificada em ordem inversa com a palavra-chave DESC.
Exemplos:
SELECT * FROM tbl_Livro ORDER BY Nome_Livro ASC;
SELECT Nome_Livro, ID_Editora
FROM tbl_Livro
ORDER BY ID_Editora; -- (ordem crescente)
SELECT Nome_Livro, Preco_Livro FROM tbl_Livro ORDER BY Preco_Livro DESC; -- (ordem decrescente)
Assista a um vídeo sobre ordenação de registros em consultas no MySQL:
Como que o Auto-Increment do ID_Editora Sabe que é a mesma editora e fornece o mesmo ID para ambos os livros?
Na hora do cadastro de um livro o usuário é que fornece o ID da editora. Ele pode digitar, escanear um código de barras, buscar no sistema com uma consulta, ou de outras formas.