sql >> Database teknologi >  >> RDS >> Database

Hvordan bestilles efter to kolonner i SQL?

Problem:

Du skal vise poster fra en given tabel sorteret efter to kolonner.

Eksempel:

Vores database har en tabel med navnet employee med følgende kolonner:id , first_name , last_name og salary .

id fornavn efternavn løn
1 Lisa Ulman 3000
2 Ada Muller 2400
3 Thomas Grøn 2400
4 Michael Muller 3000
5 Mary Grøn 2400

Lad os vise alle oplysninger for hver medarbejder, men sortere posterne efter løn i faldende rækkefølge først og derefter efter efternavn i stigende rækkefølge.

Løsning:

SELECT id,  
  first_name,
  last_name,
  salary
FROM employee
ORDER BY salary DESC, last_name;

Denne forespørgsel returnerer sorterede poster i henhold til to kolonner:løn og efternavn .

<
id fornavn efternavn løn
4 Michael M uller 3000
1 Lisa U lman 3000
3 Thomas G reen 2400
5 Mary G reen 2400
2 Ada M uller 2400

Diskussion:

Hvis du vil vælge poster fra en tabel, men gerne vil se dem sorteret efter to kolonner, kan du gøre det med ORDER BY . Denne klausul kommer i slutningen af ​​din SQL-forespørgsel.

Efter ORDER BY søgeord, skal du tilføje navnet på den kolonne, som du vil sortere poster efter først (i vores eksempel, løn). Tilføj derefter den anden kolonne efter et komma (i vores eksempel, last_name ). Du kan ændre sorteringsrækkefølgen (stigende eller faldende) separat for hver kolonne. Hvis du vil bruge stigende (lav til høj) rækkefølge, kan du bruge ASC søgeord; dette nøgleord er dog valgfrit, da det er standardrækkefølgen, når ingen er angivet. Hvis du vil bruge faldende rækkefølge, indsæt DESC søgeord efter den relevante kolonne (i eksemplet brugte vi faldende rækkefølge for salary kolonne).

I vores eksempel sorterede vi først resultatet efter løn i faldende rækkefølge (højere lønninger til lavere) og derefter efter efternavn i stigende rækkefølge inden for de allerede sorterede poster.


  1. Indsæt data i SQL Server 2017

  2. Introduktion til PL/SQL-indsamlingsmetoder i Oracle-databasen

  3. Sådan importeres en JSON-fil til en SQL Server-tabel

  4. Entity Framework Code Først med SQL Server-synonymer