Inleiding tot ORDER BY clausule in SQL

De ORDER BY-component in SQL helpt ons om onze gegevens in oplopende of aflopende volgorde te categoriseren, afhankelijk van de kolommen in onze tabellen. ORDER BY is het sleutelwoord dat in onze zoekopdracht wordt gebruikt om ons te helpen de gegevens te sorteren. Standaard categoriseren enkele databases de resultaten die door de query worden geretourneerd in oplopende volgorde. Om de gegevens in de records in afnemende volgorde te sorteren, gebruiken we het trefwoord DESC in onze zoekopdracht. We hebben ook het sleutelwoord ASC om gegevens in oplopende volgorde te categoriseren, hoewel we het meestal niet gebruiken vanwege de standaardinstellingen van de database.

Parameters van ORDER BY clausule in SQL

  • kolomnaam: dit geeft de kolomnaam aan die we willen ophalen op basis waarvan de gegevens moeten worden gerangschikt.
  • tabelnaam: dit geeft de naam aan van de tabel waaruit de records moeten worden verkregen. We moeten ten minste één tabelnaam hebben in deze parameter.
  • WHERE-voorwaarde: dit is een optionele parameter. WAAR clausule de voorwaarden bevat waaraan we moeten voldoen om de gegevens te kunnen kiezen.
  • ASC : dit is het sleutelwoord dat wordt gebruikt om de kolomgegevens in oplopende volgorde te sorteren. Als er geen trefwoord wordt genoemd, worden de gegevens standaard in oplopende volgorde gesorteerd.
  • DESC: dit is het sleutelwoord dat wordt gebruikt om de kolomgegevens in aflopende volgorde te sorteren.
  • |: Dit is slechts een indicatie voor "OF", omdat we ASC of DESC in onze query moeten gebruiken voor de resultaten.

BESTELLEN DOOR Clausule

Syntaxis van ORDER BY is:

SELECT column_name(s)
FROM table_name(s)
(WHERE condition) (ORDER BY column1, column2, .. columnN) (ASC | DESC);

Syntaxis voor het sorteren van gegevens op basis van een enkele kolom

Om gegevens van de tabel op basis van een enkele kolom in oplopende of aflopende volgorde te sorteren, kunnen we de ASC- of DESC-trefwoorden gebruiken. In ons voorbeeld sorteren we gegevens in oplopende volgorde, waarbij we het trefwoord ASC gebruiken.

Syntaxis

SELECT * FROM table_name ORDER BY column_name ASC

De syntaxis voor het sorteren van gegevens op basis van verschillende kolommen

Om gegevens van de tabel te sorteren op basis van meerdere kolommen in oplopende of aflopende volgorde, kunnen we de ASC- of DESC-trefwoorden gebruiken. Om de verschillende kolommen te vermelden volgens welke we gegevens gaan sorteren, moeten we de namen vermelden van de kolommen gescheiden door de operator komma (, ). In ons voorbeeld sorteren we gegevens in oplopende volgorde, waarbij we het trefwoord ASC gebruiken.

Syntaxis

SELECT * FROM table_name ORDER BY column1 ASC, column2 ASC

Voorbeelden van ORDER BY-clausule

Laten we naar verschillende voorbeelden kijken om de ORDER BY-clausule beter te begrijpen.

1. Voorbeeld om de resultaten in oplopende volgorde te sorteren

Om de resultaten in oplopende volgorde te categoriseren, kunnen we het ASC-trefwoord gebruiken. Als er geen trefwoord, ASC of DESC is opgegeven, is de standaard sorteervolgorde oplopende volgorde. Laten we dit begrijpen aan de hand van een voorbeeld. We hebben een medewerkerstabel.

EmployeeIDEmployeeLastNameEmployeeFirstNameE-mail identiteit
001 Donald Jo
002 smid Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Sally
006 Bruin Dan

Wanneer we proberen de resultaten in oplopende volgorde van de achternaam van de werknemer te ordenen, kunnen we de volgende verklaring gebruiken en het volgende resultaat wordt in de volgende tabel weergegeven.

SELECT *
FROM Employee
ORDER BY EmployeeLastName;

Resultaat

EmployeeIDEmployeeLastNameEmployeeFirstNameE-mail identiteit
006 Bruin Dan
001 Donald Jo
003 Jones Amy
004 Reynolds Andy
002 smid Jamie
005 Thomas Sally

Dit voorbeeld geeft alle records uit de tabel Werknemer terug, gesorteerd in oplopende volgorde volgens het veld Naam werknemerLast. We kunnen het trefwoord ASC ook als volgt gebruiken om hetzelfde resultaat te krijgen.

SELECT EmployeeID, EmployeeLastName
FROM Employee
WHERE EmployeeID '003'
ORDER BY 1 DESC;

2. Voorbeeld om de resultaten in aflopende volgorde te sorteren

We gebruiken het sleutelwoord DESC wanneer we onze gegevens in aflopende volgorde willen sorteren, in onze ORDER BY-clausule. Laten we dit begrijpen aan de hand van een voorbeeld. We hebben dezelfde tabel Medewerker met de volgende gegevens.

EmployeeIDEmployeeLastNameEmployeeFirstNameE-mail identiteit
001 Donald Jo
002 smid Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Sally
006 Bruin Dan

We hebben alleen werknemers nodig wiens EmployeeID groter is dan 2 en we moeten onze gegevens in aflopende volgorde sorteren. We gebruiken de volgende SQL-instructie voor hetzelfde en krijgen de resultatentabel met slechts 4 records.

SELECT *
FROM Employee
WHERE EmployeeID > 002
ORDER BY EmployeeID DESC;

Resultaat:

EmployeeID EmployeeLastName EmployeeFirstName E-mail identiteit
006 Bruin Dan
005 Thomas Sally
004 Reynolds Andy
003 Jones Amy

3. Voorbeeld om de resultaten te sorteren op hun relatieve positie

We kunnen onze gegevens ook rangschikken op de relatieve positie van de kolommen, waarbij 1 het eerste veld vertegenwoordigt, 2 het tweede veld, 3 het derde veld enzovoort. Laten we proberen gegevens in onze Medewerkerstabel te ordenen op basis van relatieve posities.

EmployeeIDEmployeeLastNameEmployeeFirstNamee-mail
001 Donald Jo
002 smid Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Sally
006 Bruin Dan

Door de SQL-instructie als volgt te gebruiken, kunnen we de gegevens rangschikken in aflopende volgorde van EmployeeID. We hebben ook beweerd dat we slechts twee kolommen uit de tabel nodig hebben, namelijk EmployeeID en EmployeeLastName, samen met het gebruik van de WHERE-clausule om te vermelden dat we geen rijen willen met de EmployeeID 003.

SELECT EmployeeID, EmployeeLastName
FROM Employee
WHERE EmployeeID '003'
ORDER BY 1 DESC;

Resultaat

EmployeeIDEmployeeLastName
006 Bruin
005 Thomas
004 Reynolds
002 smid
001 Donald

Aangezien de kolom op positie 1 EmployeeID is, wordt de resultatenset gesorteerd op EmployeeID.

Conclusie

In SQL retourneert de SELECT-instructie geen gegevens in een specifieke volgorde. Om een ​​bepaalde bestelling te garanderen, maken we gebruik van de ORDER BY-clausule. ORDER BY sorteert op basis van een of meer kolommen. Records worden in oplopende of aflopende volgorde geretourneerd. Als er geen ASC- of DESC-trefwoord is opgegeven, worden de resultaten in oplopende volgorde gecategoriseerd.

Aanbevolen artikel

Dit is een leidraad geweest voor de ORDER BY-clausule in SQL. Hier bespreken we de parameters en verschillende voorbeelden van de ORDER BY-component samen met de syntaxis. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie -

  1. Voordelen van NoSQL
  2. SQL Management Tools
  3. T-SQL String-functies
  4. PostgreSQL-gegevenstypen
  5. Verschillende soorten SQL-gegevens met voorbeelden