quarta-feira, 22 de outubro de 2014

Uso da Cláusula ORDER BY

Uso da Cláusula ORDER BY


A cláusula ORDER BY permite que você exiba determinado resultado de forma ordenada, o modo padrão  de ordenação é ASC (ordem crescente), mas é possível alterar o modo utilizando a palavra-chave DESC para que a ordem de exibição passe a ser decrescente.

A sintaxe do uso da cláusula:

SELECT expressão/colunas
FROM tabela(as)
[WHERE condição(es)]
[ORDER BY {coluna, expressão, posição_numérica} [ASC|DESC]] ;

A cláusula ORDER BY não é obrigatória, caso seja utilizada será sempre a última cláusula a ser inserida na instrução SELECT. Caso a cláusula de ordenação não seja utilizada, a ordem da recuperação das linhas será indefinida, podendo o servidor Oracle não extrair a mesma ordem para consultas idênticas.
É possível ordenar por várias colunas, ficando a ordenação combinada entre as colunas listadas na cláusula ORDER BY, não há limites na utilização de colunas na classificação, o limite é apenas usar colunas das tabelas envolvidas na instrução SELECT. Essa cláusula será muito útil no dia-a-dia do DBA ou desenvolvedor.

Observações importantes acerca da ordenação dos valores no modo DEFAULT (ASC);

  1. Valores númericos serão exibidos do menor para o maior (ex: 1, 2, 3, ... , 999);
  2. Valores de data serão exibidos em ordem cronológica (ex: 1-jan-92, 2-jan-92, ... , 22-out-14);
  3. Valores de caracteres serão exibidos em ordem alfabética (ex: de A a Z);
  4. Os valores NULOS (null), serão exibidos por ÚLTIMO em uma sequência CRESCENTE e no INÍCIO se a sequência for DECRESCENTE; Essa ordem pode ser manipulada adicionando a palavra-chave NULLS LAST ou NULLS FIRST à cláusula ORDER BY;
  5. Você pode classificar por uma coluna que não esteja incluída na lista do SELECT;
  6. Você pode usar o número da posição da coluna, o alias, uma expressão ou a própria coluna para ordenar.
O último ponto listado é bastante importante, mas vale salientar que só podemos ordenar utilizando a numeração da posição para as colunas que estão na lista do SELECT, se possível faça exercícios com a utilização do ORDER BY, que é bastante útil na rotina de quem desenvolve PL/SQL. O quarto ponto é importante e será cobrado no teste da certificação. Lembrando que para alterar a ordem de crescente para decrescente basta acrescentar a palavra-chave  DESC após a coluna que se deseja alterar a ordem para decrescente.

Por hora, é só.

Nenhum comentário:

Postar um comentário