Order By – klauzule (Visual Basic)

Určuje pořadí řazení pro výsledek dotazu.

Syntax

Order By orderExp1 [ Ascending | Descending ] [, orderExp2 [...] ]

Součásti

orderExp1 Požadovanou. Jedno nebo více polí z aktuálního výsledku dotazu, které identifikují způsob řazení vrácených hodnot. Názvy polí musí být odděleny čárkami (,). Jednotlivá pole můžete identifikovat ve vzestupném nebo sestupném pořadí pomocí Ascending Descending klíčových slov nebo. Pokud Ascending Descending není zadáno klíčové slovo or, výchozí pořadí řazení je vzestupné. V poli pořadí řazení se předává přednost zleva doprava.

Poznámky

Order ByK řazení výsledků dotazu můžete použít klauzuli. Order ByKlauzule může řadit výsledek jenom na základě proměnné rozsahu pro aktuální obor. SelectKlauzule například zavádí nový obor ve výrazu dotazu s novými proměnnými iterace pro tento obor. Proměnné rozsahu definované před Select klauzulí v dotazu nejsou k dispozici za Select klauzulí. Proto pokud chcete výsledky seřadit podle pole, které není v klauzuli k dispozici Select , je nutné Order By před klauzulí Vložit klauzuli Select . Příkladem toho, kdy byste to museli udělat, je, že chcete dotaz seřadit podle polí, která se nevrací jako součást výsledku.

Vzestupné a sestupné řazení pro pole je určeno implementací IComparable rozhraní pro datový typ pole. Pokud datový typ neimplementuje IComparable rozhraní, pořadí řazení se ignoruje.

Příklad 1

Následující výraz dotazu používá From klauzuli pro deklaraci proměnné rozsahu book pro books kolekci. Order ByKlauzule seřadí výsledek dotazu podle ceny ve vzestupném pořadí (výchozí nastavení). Knihy se stejnou cenou jsou seřazené podle názvu ve vzestupném pořadí. SelectKlauzule vybere Title Price vlastnosti a jako hodnoty vrácené dotazem.

Dim titlesAscendingPrice = From book In books
                           Order By book.Price, book.Title
                           Select book.Title, book.Price

Příklad 2

Následující výraz dotazu používá Order By klauzuli pro řazení výsledků dotazu podle ceny v sestupném pořadí. Knihy se stejnou cenou jsou seřazené podle názvu ve vzestupném pořadí.

Dim titlesDescendingPrice = From book In books
                            Order By book.Price Descending, book.Title
                            Select book.Title, book.Price

Příklad 3

Následující výraz dotazu používá Select klauzuli pro výběr názvu knihy, ceny, data publikování a autora. Následně naplní Title Price pole,, PublishDate a Author proměnné rozsahu pro nový obor. Order ByKlauzule seřadí novou proměnnou rozsahu podle jména autora, názvu knihy a ceny. Jednotlivé sloupce jsou seřazené ve výchozím pořadí (vzestupně).

Dim bookOrders =
  From book In books
  Select book.Title, book.Price, book.PublishDate, book.Author
  Order By Author, Title, Price

Viz také