Problema:
Você deseja exibir registros de uma tabela em ordem alfabética ou alfabética reversa de acordo com a coluna fornecida.
Exemplo:
Nosso banco de dados possui uma tabela chamada cliente. A tabela customer contém dados nas colunas id, first_name e last_name.
id | first_name | last_name |
---|---|---|
1 | Susan | Thomas |
2 | João | Michael |
3 | Tom | Muller |
Vamos exibir as informações de cada cliente, classificadas em ordem crescente pelo sobrenome.
Solução:
SELECT id, first_name, last_name, FROM customer ORDER BY last_name ASC;
Esta consulta retorna registros classificados em ordem alfabética:
id | first_name | last_name |
---|---|---|
2 | João | Michael |
3 | Tom | Muller |
1 | Susan | Thomas |
Discussão:
Se você deseja selecionar registros de uma tabela, mas gostaria de vê-los classificados de acordo com uma determinada coluna, basta usar o
ORDER BY
cláusula no final de um SELECT
demonstração. Não importa quão complicada ou longa seja sua consulta SQL—ORDER BY
deve estar sempre no final do comando. Após o
ORDER BY
palavra-chave, você nomeia a coluna pela qual os registros devem ser classificados. Em nossa consulta, classificamos pelo sobrenome do cliente. ou
Por padrão,
ORDER BY
sem nenhum especificador adicional classifica em ordem crescente (equivalente a usar o ASC
palavra-chave explicitamente). Como você provavelmente pode adivinhar, ASC
significa "ascendente". Se você quiser classificar em ordem decrescente, simplifique e especifique o DESC
palavra-chave após o nome da coluna. A consulta abaixo é semelhante à anterior, mas retorna uma lista de clientes classificados em ordem decrescente pelo sobrenome:
SELECT id, first_name, last_name, FROM customer ORDER BY last_name DESC;
id | first_name | last_name |
---|---|---|
1 | Susan | Thomas |
3 | Tom | Muller |
2 | João | Michael |