Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode ordenar as linhas em um resultado de consulta. Ou seja, você pode nomear uma coluna ou um conjunto específico de colunas cujos valores determinam a ordem das linhas no conjunto de resultados.
Nota
A ordem de classificação é determinada em parte pela sequência de ordenação da coluna. Você pode alterar a sequência de ordenação na caixa de diálogo de Ordenação.
Há várias maneiras pelas quais você pode classificar os resultados da consulta:
Você pode organizar linhas em ordem crescente ou decrescente
Por padrão, o SQL usa colunas order-by para organizar linhas em ordem crescente. Por exemplo, para organizar os títulos do livro por preço crescente, basta classificar as linhas pela coluna de preço. O SQL resultante pode ter esta aparência:
SELECT * FROM titles ORDER BY price;Por outro lado, se você quiser organizar os títulos começando pelos livros mais caros, você pode especificar uma ordem decrescente de preços. Ou seja, você indica que as linhas de resultado devem ser organizadas por valores decrescentes da coluna de preço. O SQL resultante pode ter esta aparência:
SELECT * FROM titles ORDER BY price DESC;Você pode classificar por várias colunas
Por exemplo, você pode criar um conjunto de resultados com uma linha para cada autor, ordenando primeiro por estado e depois por cidade. O SQL resultante pode ter esta aparência:
SELECT * FROM authors ORDER BY state, city;Você pode classificar por colunas que não aparecem no conjunto de resultados
Por exemplo, você pode criar um conjunto de resultados com os títulos mais caros primeiro, mesmo que os preços não apareçam. O SQL resultante pode ter esta aparência:
SELECT title_id, title FROM titles ORDER BY price DESC;Você pode classificar por colunas derivadas
Por exemplo, você pode criar um conjunto de resultados no qual cada linha contém um título de livro - com os livros que pagam os royalties mais altos por cópia aparecendo primeiro. O SQL resultante pode ter esta aparência:
SELECT title, price * royalty / 100 AS royalty_per_unit FROM titles ORDER BY royalty_per_unit DESC;(A fórmula para calcular os royalties que cada livro ganha por cópia é enfatizada.)
Para calcular uma coluna derivada, você pode usar a sintaxe SQL, como no exemplo anterior, ou pode usar uma função definida pelo usuário que retorna um valor escalar. Para obter mais informações sobre funções definidas pelo usuário, consulte a documentação do SQL Server.
Você pode classificar linhas agrupadas
Por exemplo; você pode criar um conjunto de resultados no qual cada linha descreve uma cidade, além do número de autores nessa cidade , com as cidades contendo muitos autores aparecendo primeiro. O SQL resultante pode ter esta aparência:
SELECT city, state, COUNT(*) FROM authors GROUP BY city, state ORDER BY COUNT(*) DESC, state;A consulta usa
statecomo uma coluna de classificação secundária. Portanto, se dois estados tiverem o mesmo número de autores, esses estados aparecerão em ordem alfabética.Você pode classificar usando dados internacionais
Isto é; você pode classificar uma coluna usando convenções de ordenação que diferem das convenções padrão para essa coluna. Por exemplo, você pode escrever uma consulta que recupera todos os títulos do livro de Jaime Patiño. Para exibir os títulos em ordem alfabética, use uma sequência de ordenação em espanhol para a coluna de título. O SQL resultante pode ter esta aparência:
SELECT title FROM authors INNER JOIN titleauthor ON authors.au_id = titleauthor.au_id INNER JOIN titles ON titleauthor.title_id = titles.title_id WHERE au_fname = 'Jaime' AND au_lname = 'Patiño' ORDER BY title COLLATE SQL_Spanish_Pref_CP1_CI_AS;