Sortera rader (Visual Database Tools)
gäller för:SQL Server
Du kan sortera raderna i ett frågeresultat. Det innebär att du kan namnge en viss kolumn eller uppsättning kolumner vars värden avgör ordningen på rader i resultatuppsättningen.
Notera
Sorteringsordningen bestäms delvis av kolumnens sorteringssekvens. Du kan ändra sorteringssekvensen i dialogrutan Sortering.
Det finns flera sätt att sortera frågeresultat:
Du kan ordna rader i stigande eller fallande ordning Som standard använder SQL order-by-kolumner för att ordna rader i stigande ordning. Om du till exempel vill ordna boktitlarna efter stigande pris sorterar du bara raderna efter priskolumnen. Den resulterande SQL-filen kan se ut så här:
SELECT * FROM titles ORDER BY price
Å andra sidan, om du vill ordna titlarna med de dyrare böckerna först, kan du uttryckligen ange en högst-först ordning. Det innebär att du anger att resultatraderna ska ordnas med fallande värden i priskolumnen. Den resulterande SQL-filen kan se ut så här:
SELECT * FROM titles ORDER BY price DESC
Du kan sortera efter flera kolumner Du kan till exempel skapa en resultatuppsättning med en rad för varje författare, först efter delstat och sedan efter ort. Den resulterande SQL-filen kan se ut så här:
SELECT * FROM authors ORDER BY state, city
Du kan sortera efter kolumner som inte visas i resultatuppsättningen Du kan till exempel skapa en resultatuppsättning med de dyraste rubrikerna först, även om priserna inte visas. Den resulterande SQL-filen kan se ut så här:
SELECT title_id, title FROM titles ORDER BY price DESC
Du kan sortera efter härledda kolumner Du kan till exempel skapa en resultatuppsättning där varje rad innehåller en boktitel – där de böcker som betalar högst royalty per kopia visas först. Den resulterande SQL-filen kan se ut så här:
SELECT title, price * royalty / 100 as royalty_per_unit FROM titles ORDER BY royalty_per_unit DESC
(Formeln för att beräkna royaltyn som varje bok tjänar per kopia betonas.)
Om du vill beräkna en härledd kolumn kan du använda SQL-syntax, som i föregående exempel, eller använda en användardefinierad funktion som returnerar ett skalärt värde. Mer information om användardefinierade funktioner finns i SQL Server-dokumentationen.
Du kan till exempel sortera grupperade rader. du kan skapa en resultatuppsättning där varje rad beskriver en stad, plus antalet författare i staden – där de städer som innehåller många författare visas först. Den resulterande SQL-filen kan se ut så här:
SELECT city, state, COUNT(*) FROM authors GROUP BY city, state ORDER BY COUNT(*) DESC, state
Observera att frågan använder
state
som en sekundär sorteringskolumn. Om två tillstånd har samma antal författare visas dessa tillstånd i alfabetisk ordning.Du kan sortera med hjälp av internationella data Dvs. du kan sortera en kolumn med hjälp av sorteringskonventioner som skiljer sig från standardkonventionerna för den kolumnen. Du kan till exempel skriva en fråga som hämtar alla boktitlar av Jaime Patiño. Om du vill visa rubrikerna i alfabetisk ordning använder du en spansk sorteringssekvens för rubrikkolumnen. Den resulterande SQL-filen kan se ut så här:
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
Se även
sortera och gruppera frågeresultat (Visual Database Tools)
Utforma frågor och vyer Instruktioner (Visual Database Tools)