# Cláusula ORDER BY

A cláusula ORDER BY é um elemento opcional da Instrução SELECT. A cláusula ORDER BY permite especificar a ordem em que as linhas aparecem no ResultSet.

#### Sintaxe

    ORDER BY { nome-da-coluna | PosiçãoColuna }
        [ ASC | DESC ]
        [ , nome-da-coluna | PosiçãoColuna
            [ ASC | DESC ] ] *

A PosiçãoColuna é um valor inteiro que identifica o número da coluna no ItemSeleção na consulta subjacente da Instrução SELECT. A PosiçãoColuna deve ser maior que zero, e não pode ser maior que o número de colunas na tabela de resultado. Em outras palavras, se for desejado ordenar pela posição da coluna, a coluna deverá estar presente na lista de seleção.

O nome-da-coluna se refere aos nomes visíveis dos ItensSelecionados na consulta subjacente da Instrução SELECT. O nome da coluna de ordenação não precisa estar na lista de seleção.

ASC especifica que os resultados devem ser retornados na ordem ascendente; DESC especifica que os resultados devem ser retornados na ordem descendente; Quando a ordem não é especificada, o padrão é ASC.

A cláusula ORDER BY impede que a instrução SELECT se torne um cursor atualizável (Para obter mais informações deve ser consultado Requisitos para cursores atualizáveis e ResultSets atualizáveis.)

Por exemplo, se uma coluna INTEGER contiver números inteiros, NULL é considerado maior que 1 para as finalidades de classificação. Em outras palavras, os valores nulos são classificados como sendo maiores.

    -- ordenar pelo nome de correlação NAÇÃO
    SELECT NOME_CIDADE, PAÍS AS NAÇÃO
    FROM CIDADES
    ORDER BY NAÇÃO;

Tópico pai: Instruções
Conceitos relacionados
Interação com o sistema de dependências
Instruções CREATE
Instruções DROP
Instruções RENAME
Instruções SET
Referências relacionadas
Instrução ALTER TABLE
CALL (PROCEDIMENTO)
Cláusula CONSTRAINT
Instrução DECLARE GLOBAL TEMPORARY TABLE
Instrução DELETE
Cláusula FOR UPDATE
Cláusula FROM
Cláusula GROUP BY
Cláusula HAVING
INNER JOIN
Instrução INSERT
Operação JOIN
LEFT OUTER JOIN
Instrução LOCK TABLE
Consulta
RIGHT OUTER JOIN
SubconsultaEscalar
ExpressãoSeleção
Instrução SELECT
ExpressãoTabela
SubconsultaTabela
Instrução UPDATE
VALUES Expressão
Cláusula WHERE
Cláusula WHERE CURRENT OF