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 |