SQL-ORDER BY
Die SQL ORDER BY -Klausel wird verwendet, um die in Tabellen in der Datenbank gespeicherten Daten zu sortieren . Die Sortierung kann aufsteigend, absteigend oder nach mehreren Spalten der Tabelle erfolgen .
Im Allgemeinen ist die Standardsortierreihenfolge aufsteigend.
SELECT expressions FROM tables WHERE conditions ORDER BY expression ASC | DESC;
Das Folgende ist die Syntax einer allgemeinen ORDER BY-Klausel:
Beispiel:
Betrachten wir die folgenden Kunden Tabelle.
ID | NAME | ALTER | ADRESSE | GEHALT |
1 | Himani Gupta | 21 | Modinagar | 22000 |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
SELECT * FROM Customers ORDER BY NAME, SALARY;
Die obige Abfrage sortiert alle Datensätze in aufsteigender Reihenfolge basierend auf den Spalten NAME und GEHALT.
Ausgabe:
ID | NAME | ALTER | ADRESSE | GEHALT |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
1 | Himani Gupta | 21 | Modinagar | 22000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
SELECT * FROM CUSTOMERS ORDER BY NAME DESC;
Die obige Abfrage sortiert alle Datensätze in der Tabelle basierend auf der Spalte NAME absteigend.
Ausgabe:
ID | NAME | ALTER | ADRESSE | GEHALT |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | 21 | Modinagar | 22000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
Es gibt verschiedene Themen unter der SQL ORDER BY-Klausel. Sie sind nämlich:
- SQL-ORDER BY ASC – Sortiert die Daten aufsteigend
- SQL-ORDER BY DESC – Sortiert die Daten absteigend
- SQL ORDER BY RANDOM – Sortiert Zufallsdaten
- SQL-ORDER-BY-LIMIT – Wählt begrenzte Daten aus der Datenbank aus
- SQL ORDER BY mehrere Spalten – Sortiert die Daten basierend auf mehreren Spalten.
Lassen Sie uns jeden von ihnen im Detail besprechen.
SQL-ORDER BY ASC
SQL-ORDER BY ASC -Klausel sortiert die Daten basierend auf einigen Spalten in aufsteigender Reihenfolge. Im Allgemeinen ist die Standardsortierreihenfolge aufsteigend.
Beispiel:
Betrachten wir die folgenden Kunden Tabelle.
ID | NAME | ALTER | ADRESSE | GEHALT |
1 | Himani Gupta | 21 | Modinagar | 22000 |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
SELECT * FROM Customers ORDER BY NAME, SALARY;
Die obige Abfrage sortiert alle Datensätze in aufsteigender Reihenfolge basierend auf den Spalten NAME und GEHALT.
Ausgabe:
ID | NAME | ALTER | ADRESSE | GEHALT |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
1 | Himani Gupta | 21 | Modinagar | 22000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
SQL ORDER BY DESC
Die SQL ORDER BY DESC-Klausel sortiert die Daten basierend auf einigen Spalten in absteigender Reihenfolge.
Beispiel:
Betrachten wir die folgenden Kunden Tabelle.
ID | NAME | ALTER | ADRESSE | GEHALT |
1 | Himani Gupta | 21 | Modinagar | 22000 |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
SELECT * FROM CUSTOMERS ORDER BY NAME DESC;
Die obige Abfrage sortiert alle Datensätze in der Tabelle basierend auf der Spalte NAME absteigend.
Ausgabe:
ID | NAME | ALTER | ADRESSE | GEHALT |
2 | Shiva-Tiwari | 22 | Bhopal | 21000 |
4 | Ritesh yadav | 36 | Azamgarh | 26000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | 21 | Modinagar | 22000 |
5 | Balwant singh | 45 | Waranasi | 36000 |
3 | Ajeet bhargav | 45 | Meerut | 65000 |
SQL-ORDER-BY-LIMIT
Die SQL ORDER BY LIMIT-Klausel hilft beim Abrufen einer bestimmten Anzahl von Datensätzen aus der Datenbanktabelle. Es wird im Allgemeinen in Situationen verwendet, in denen es eine große Anzahl von Tupeln gibt, die die gegebene Bedingung erfüllen. Es legt eine Obergrenze für die Anzahl der abzurufenden Datensätze fest.
Um die LIMIT-Klausel in SQL zu verwenden, muss man die ROWNUM verwenden Klausel damit.
Hinweis:Es ist zu beachten, dass die LIMIT-Klausel nicht von allen SQL-Versionen unterstützt wird.
Diese Klausel kann mit SQL 2008 OFFSET angegeben werden oder FETCH FIRST-Klauseln .
Beispiel:
Betrachten wir den folgenden Schüler Tabelle.
RollNo | Name | Note |
12001 | Aditya | 9 |
12002 | Sahil | 6 |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
12006 | Anne | 10 |
12007 | Yusuf | 7 |
12008 | Alex | 5 |
SELECT * FROM Student LIMIT 5;
Die obige Abfrage gibt nur die 5 besten Schüler aus der Schülertabelle zurück.
Ausgabe:
12001 | Aditya | 9 |
12002 | Sahil | 6 |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
Die LIMIT-Klausel kann auch mit der ORDER BY-Klausel verwendet werden.
SELECT * FROM Student ORDER BY Grade DESC LIMIT 3;
Die obige Abfrage gibt die drei besten Schüler mit den höchsten Noten in absteigender Reihenfolge zurück.
Ausgabe:
12006 | Anne | 10 |
12001 | Aditya | 9 |
12004 | Robin | 9 |
Der LIMIT-Operator ist besonders nützlich in Situationen, in denen begrenzte Daten abgerufen werden müssen, ohne bedingte Anweisungen zu verwenden.
Der LIMIT-Operator kann auch mit dem OFFSET-Operator verwendet werden.
LIMIT mit OFFSET
Es ist zu beachten, dass der OFFSET-Wert größer als Null sein sollte , und es kann nicht negativ sein. Wenn ein negativer Wert angegeben wird, wird ein Fehler zurückgegeben.
Beispiel:
Betrachten wir dieselbe Student-Tabelle.
RollNo | Name | Note |
12001 | Aditya | 9 |
12002 | Sahil | 6 |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
12006 | Anne | 10 |
12007 | Yusuf | 7 |
12008 | Alex | 5 |
SELECT * FROM Student LIMIT 5 OFFSET 2 ORDER BY RollNo;
Diese Abfrage gibt die obersten 5 Datensätze der Student-Tabelle ohne die obersten 2 Einträge zurück.
Ausgabe:
RollNo | Name | Note |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
12006 | Anne | 10 |
12007 | Yusuf | 7 |
ALLE BEGRENZEN
Es gibt eine weitere Klausel ähnlich LIMIT, bekannt als LIMIT ALL . Die LIMIT ALL-Klausel setzt keine Begrenzung und gibt alle Einträge der Tabelle zurück.
Beispiel:
Betrachten wir noch einmal dieselbe Student-Tabelle.
RollNo | Name | Note |
12001 | Aditya | 9 |
12002 | Sahil | 6 |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
12006 | Anne | 10 |
12007 | Yusuf | 7 |
12008 | Alex | 5 |
Abfrage:
SELECT * FROM Student LIMIT ALL;
RollNo | Name | Note |
12001 | Aditya | 9 |
12002 | Sahil | 6 |
12003 | Hema | 8 |
12004 | Robin | 9 |
12005 | Sita | 7 |
12006 | Anne | 10 |
12007 | Yusuf | 7 |
12008 | Alex | 5 |
SQL ORDER BY mehrere Spalten
Die SQL ORDER BY Mehrere Spalten gibt die Dateneinträge in der Spalte zurück, indem sie nach mehreren Spalten sortiert werden, die in der Abfrage angegeben wurden.
Es sortiert die Daten basierend auf der Reihenfolge der Spaltennamen, die nach der ORDER BY-Klausel angegeben wurden. Die Namen der Spalten sollten in der entsprechenden Reihenfolge hinzugefügt werden, in der der Benutzer die Sortierung haben möchte.
Mehrere Spaltennamen können hinzugefügt werden, indem sie durch ein Komma (,) getrennt werden. Außerdem können die Schlüsselwörter ASC oder DESC verwendet werden, um die Reihenfolge der Sortierung anzugeben.
Beispiel:
Betrachten wir den folgenden Mitarbeiter Tabelle mit vier Spalten, nämlich ID, Vorname, Nachname und Gehalt.
id | Vorname | Nachname | Gehalt |
1 | Lisa | Ulmann | 3000 |
2 | Ada | Müller | 2400 |
3 | Thomas | Grün | 2400 |
4 | Michael | Müller | 3000 |
5 | Maria | Grün | 2400 |
Abfrage:
SELECT id, first_name, last_name, salary FROM employee ORDER BY salary DESC, last_name;
Ausgabe:
id | Vorname | Nachname | Gehalt |
4 | Michael | M uller | 3000 |
1 | Lisa | Du lman | 3000 |
3 | Thomas | G wieder | 2400 |
5 | Maria | G wieder | 2400 |
2 | Ada | M uller | 2400 |
Daher wurde die Ausgabe zunächst absteigend nach Gehalt und dann aufsteigend nach Nachnamen sortiert. Es ist zu beachten, dass, wenn ASC oder DESC nicht erwähnt wird, beide Spalten standardmäßig in aufsteigender Reihenfolge sortiert werden.
Fazit
Oben sind also einige der wichtigsten und am häufigsten verwendeten ORDER BY-Klauseln aufgeführt, die von Entwicklern täglich verwendet werden, um bestimmte Operationen in der Datenbank auszuführen und Daten abzurufen. Diese Klauseln können einzeln oder auch kombiniert verwendet werden, um Datenbankoperationen auszuführen.