Cláusula Order By (Visual Basic)
Especifica a ordem de classificação para obter um resultado de consulta .
Order By orderExp1 [ Ascending | Descending ] [, orderExp2 [...] ]
Parts
- orderExp1
Required. Um ou mais campos do resultado da consulta atual que identificam como os valores retornados do pedido. Os nomes de campo devem ser separados por vírgulas (,). Você pode identificar cada campo como classificados em ordem crescente ou decrescente usando o Ascending ou Descending palavras-chave. Se nenhum Ascending ou Descending palavra-chave for especificado, o padrão ordem de classificação será crescente. Os campos de ordem de classificação recebem a precedência da esquerda para a direita.
Comentários
Você pode usar o Order By cláusula para classificar os resultados de uma consulta. O Order By cláusula só pode classificar um resultado baseado na variável de intervalo para o escopoatual. Por exemplo, o Select cláusula introduz um novo escopo em uma expressão de consulta com novas variáveis de iteração para esse escopo. O intervalo de variáveis definidas antes de um Select cláusula em uma consulta não estão disponíveis após a Select cláusula. Portanto, se você deseja ordenar os resultados por um campo que não está disponível na Select cláusula, você deve colocar o Order By cláusula antes de Select cláusula. Um exemplo de quando você teria que fazer isso é quando você deseja classificar a sua consulta pelos campos não são retornados como parte do resultado.
Crescente e em ordem decrescente para um campo é determinado pela implementação da IComparable interface para o tipo de dados do campo. Se o tipo de dados não implementa o IComparable interface, a ordem de classificação será ignorado.
Exemplo
The following query expression uses a From clause to declare a range variable book for the books collection. O Order By cláusula classifica o resultado da consulta pelo preço em crescente de ordem (padrão). Livros com o mesmo preço são classificados por título em ordem crescente. O Select cláusula seleciona o Title e Price propriedades como os valores retornados pela consulta.
Dim titlesAscendingPrice = From book In books
Order By book.Price, book.Title
Select book.Title, book.Price
A expressão de consulta a seguir usa a Order By cláusula para classificar os resultados da consulta pelo preço na ordem decrescente. Livros com o mesmo preço são classificados por título em ordem crescente.
Dim titlesDescendingPrice = From book In books
Order By book.Price Descending, book.Title
Select book.Title, book.Price
A expressão de consulta a seguir usa um Select cláusula para selecionar o título do livro, preço, data de publicar e autor. Em seguida, ele preenche o Title, Price, PublishDate, e Author campos de variável de intervalo para o novo escopo. O Order By cláusula ordena a nova variável de intervalo pelo nome do autor, título do livro e em seguida, o preço. Cada coluna é classificada na ordem padrão (crescente).
Dim bookOrders =
From book In books
Select book.Title, book.Price, book.PublishDate, book.Author
Order By Author, Title, Price
Consulte também
Referência
Cláusula Select (Visual Basic)
A partir da cláusula (Visual Basic)
Conceitos
Introdução ao LINQ no Visual Basic