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