Descubra o que é o ORDER BY no SQL, o que ele faz e como pode auxiliar nas análises em bancos de dados.
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Nesta aula, quero mostrar a você o comando ORDER BY no SQL, ensinando o que ele faz e como pode ser útil para suas análises em bancos de dados.
Com o ORDER BY no SQL, podemos ordenar e classificar colunas de um banco de dados, tornando a análise de dados mais fácil e prática. É possível ordenar números e textos dentro do SQL utilizando o comando ORDER BY, seja em ordem crescente ou decrescente.
Vamos aprender como utilizar o ORDER BY no SQL para ordenar e classificar nossas colunas nos bancos de dados.
Para visualizarmos os diferentes tipos de ordenação com o ORDER BY no SQL, utilizarei a seguinte tabela de clientes:
Nessa tabela, temos colunas dos mais variados tipos, como texto, data, número, entre outras. Com o ORDER BY no SQL, podemos ordenar essa tabela de diversas formas.
Poderíamos organizá-la para exibir os nomes dos clientes começando de A e indo até Z, ou pela data de nascimento da mais antiga para a mais recente, ou então ordenar pela renda anual. Todos esses tipos de ordenação são possíveis utilizando o ORDER BY.
Vamos começar visualizando algumas das ordenações crescentes possíveis. Por exemplo, organizando a partir da coluna de Renda_Anual do menor valor para o maior.
Para isso, teremos de fazer um SELECT da tabela clientes e, em seguida, utilizar o comando ORDER BY para indicar que queremos ordenar essa tabela, passando a coluna que será utilizada para isso e se essa ordenação será crescente ou decrescente.
Como nossa ordenação será crescente, iremos utilizar a palavra-chave ASC, que significa ascendente.
SELECT * FROM clientes
ORDER BY Renda_Anual ASC;
Executando esse código, teremos nossa tabela ordenada pela renda anual de menor valor para a de maior valor.
Se não passarmos nenhuma palavra-chave para o código e apenas definirmos o ORDER BY, por padrão, ele irá ordenar em ordem crescente também.
SELECT * FROM clientes
ORDER BY Renda_Anual;
O mesmo pode ser feito para termos uma ordenação decrescente dos dados. Precisamos apenas substituir a palavra-chave ASC por DESC.
SELECT * FROM clientes
ORDER BY Renda_Anual DESC;
Até agora, vimos a ordenação a partir de colunas numéricas, que funcionaria para a coluna de Qtd_Filhos, ID_Cliente e Renda_Anual. Mas como podemos aplicar o ORDER BY no SQL para colunas de textos?
O ORDER BY para colunas de textos funcionará da seguinte forma: em uma ordenação crescente (ASC), ele irá organizar em ordem alfabética, de A até Z, e de forma decrescente (DESC), ele irá ordenar de Z até A.
SELECT * FROM clientes
ORDER BY Nome ASC;
Vale observarmos que algumas pessoas possuem o mesmo nome, então, para uma ordenação mais precisa, seria necessário ordenarmos pelo Nome e Sobrenome. Nos próximos exemplos, iremos abordar esse caso.
Para ordenarmos datas, a lógica é a seguinte: em ordem crescente (ASC), iremos ordenar da data mais antiga para a mais recente. E em ordem decrescente (DESC), da mais recente para a mais antiga.
SELECT * FROM clientes
ORDER BY Data_Nascimento ASC;
Como vimos no exemplo de ordenação de texto no SQL, em alguns casos precisamos que a ordenação, para que fique correta, utilize mais de uma coluna.
Para isso, podemos utilizar o ORDER BY da seguinte forma:
SELECT * FROM clientes
ORDER BY Nome ASC, Sobrenome ASC;
Dessa forma, o SQL ordena primeiro pela coluna de Nome e, em seguida, pela coluna de Sobrenome, ambas em ordem crescente de A até Z. Podemos passar quantas colunas quisermos, e a ordenação será feita na ordem que passarmos.
Na aula de hoje, você aprendeu como utilizar o comando ORDER BY no SQL para ordenar e classificar as colunas de um banco de dados.
Essa funcionalidade é muito útil, principalmente quando você deseja exibir um ranking, ou pegar os top clientes, ou outros dados que esteja analisando.
Com o ORDER BY, suas análises em bancos de dados ficarão ainda mais completas e organizadas.
Para acessar outras publicações de SQL, clique aqui!
Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.