Database
 sql >> Baza danych >  >> RDS >> Database

SQL ZAMÓW WG

SQL ORDER BY

SQL ORDER BY klauzula służy do sortowania danych przechowywanych w tabelach w bazie danych . Sortowanie może odbywać się w górę, w dół lub na podstawie wielu kolumn tabeli .

Ogólnie rzecz biorąc, domyślny porządek sortowania to porządek rosnący.

SELECT expressions
 FROM tables
 WHERE conditions
 ORDER BY expression ASC | DESC; 

Poniżej znajduje się składnia ogólnej klauzuli ORDER BY:

Przykład:

Rozważmy następujących Klientów tabela.

ID NAZWA WIEK ADRES WYNAGRODZENIE
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 Niezłe śpiewanie 45 Waranasi 36000
6 Szarm Mahesha 26 Mathura 22000
 SELECT * 
 FROM Customers
 ORDER BY NAME, SALARY; 

Powyższe zapytanie posortuje wszystkie rekordy w kolejności rosnącej na podstawie kolumn NAZWA i WYNAGRODZENIE.

Wyjście:

ID NAZWA WIEK ADRES WYNAGRODZENIE
3 Ajeet Bhargav 45 Meerut 65000
5 Niezłe śpiewanie 45 Waranasi 36000
1 Himani gupta 21 Modinagar 22000
6 Szarm Mahesha 26 Mathura 22000
4 Ritesh yadav 36 Azamgarh 26000
2 Shiva tiwari 22 Bhopal 21000
SELECT *
 FROM CUSTOMERS
 ORDER BY NAME DESC; 

Powyższe zapytanie posortuje wszystkie rekordy w tabeli w kolejności malejącej na podstawie kolumny NAME.

Wyjście:

ID NAZWA WIEK ADRES WYNAGRODZENIE
2 Shiva tiwari 22 Bhopal 21000
4 Ritesh yadav 36 Azamgarh 26000
6 Szarm Mahesha 26 Mathura 22000
1 Himani gupta 21 Modinagar 22000
5 Niezłe śpiewanie 45 Waranasi 36000
3 Ajeet Bhargav 45 Meerut 65000

W klauzuli SQL ORDER BY znajdują się różne tematy. Mianowicie są to:

  • SQL ZAMÓWIENIE WG ASC – Sortuje dane w porządku rosnącym
  • SQL ORDER WEDŁUG OPISU – Sortuje dane malejąco
  • SQL ZAMÓWIENIE LOSOWE – Sortuje losowe dane
  • SQL ORDER WEDŁUG LIMITU – Wybiera ograniczone dane z bazy danych
  • SQL ORDER BY Wiele kolumn – Sortuje dane na podstawie wielu kolumn.

Omówmy szczegółowo każdy z nich.

SQL ZAMÓWIENIE WG ASC

SQL ORDER WEDŁUG ASC klauzula sortuje dane w porządku rosnącym na podstawie niektórych kolumn. Ogólnie rzecz biorąc, domyślna kolejność sortowania to rosnąco.

Przykład:

Rozważmy następujących Klientów tabela.

ID NAZWA WIEK ADRES WYNAGRODZENIE
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 Niezłe śpiewanie 45 Waranasi 36000
6 Szarm Mahesha 26 Mathura 22000
SELECT * 
 FROM Customers
 ORDER BY NAME, SALARY; 

Powyższe zapytanie posortuje wszystkie rekordy w kolejności rosnącej na podstawie kolumn NAZWA i WYNAGRODZENIE.

Wyjście:

ID NAZWA WIEK ADRES WYNAGRODZENIE
3 Ajeet Bhargav 45 Meerut 65000
5 Niezłe śpiewanie 45 Waranasi 36000
1 Himani gupta 21 Modinagar 22000
6 Szarm Mahesha 26 Mathura 22000
4 Ritesh yadav 36 Azamgarh 26000
2 Shiva tiwari 22 Bhopal 21000

SQL ORDER WEDŁUG DESC

Klauzula SQL ORDER BY DESC sortuje dane w kolejności malejącej na podstawie niektórych kolumn.

Przykład:

Rozważmy następujących Klientów tabela.

ID NAZWA WIEK ADRES WYNAGRODZENIE
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 Niezłe śpiewanie 45 Waranasi 36000
6 Szarm Mahesha 26 Mathura 22000
SELECT *
 FROM CUSTOMERS
 ORDER BY NAME DESC; 

Powyższe zapytanie posortuje wszystkie rekordy w tabeli w kolejności malejącej na podstawie kolumny NAME.

Wyjście:

ID NAZWA WIEK ADRES WYNAGRODZENIE
2 Shiva tiwari 22 Bhopal 21000
4 Ritesh yadav 36 Azamgarh 26000
6 Szarm Mahesha 26 Mathura 22000
1 Himani gupta 21 Modinagar 22000
5 Niezłe śpiewanie 45 Waranasi 36000
3 Ajeet Bhargav 45 Meerut 65000

SQL ZAMÓW WEDŁUG LIMITU

Klauzula SQL ORDER BY LIMIT pomaga w pobraniu określonej liczby rekordów z tabeli bazy danych. Jest zwykle używany w sytuacjach, gdy istnieje duża liczba krotek spełniających dany warunek. Ustawia górny limit liczby pobieranych rekordów.

Aby użyć klauzuli LIMIT w SQL, należy użyć ROWNUM z nim klauzulę.

Uwaga:Należy zauważyć, że klauzula LIMIT nie jest obsługiwana przez wszystkie wersje SQL.

Klauzula ta może być określona za pomocą SQL 2008 OFFSET lub klauzule FETCH FIRST .

Przykład:

Rozważmy następującego Studenta tabela.

Rolka nr Nazwa Ocena
12001 Aditya 9
12002 Sahil 6
12003 Hema 8
12004 Robin 9
12005 Sita 7
12006 Anna 10
12007 Yusuf 7
12008 Alek 5
SELECT *
 FROM Student
 LIMIT 5; 

Powyższe zapytanie zwróci tylko 5 najlepszych uczniów z tabeli Uczniowie.

Wyjście:

12001 Aditya 9
12002 Sahil 6
12003 Hema 8
12004 Robin 9
12005 Sita 7

Klauzula LIMIT może być również używana z klauzulą ​​ORDER BY.

SELECT *
 FROM Student
 ORDER BY Grade DESC
 LIMIT 3; 

Powyższe zapytanie zwróci 3 najlepszych uczniów z najwyższymi ocenami w kolejności malejącej.

Wyjście:

12006 Anna 10
12001 Aditya 9
12004 Robin 9

Operator LIMIT jest szczególnie przydatny w sytuacjach, gdy konieczne jest pobranie ograniczonych danych bez użycia instrukcji warunkowych.

Operator LIMIT może być również używany z operatorem OFFSET.

LIMIT z PRZESUNIĘCIEM

Należy zauważyć, że wartość PRZESUNIĘCIE powinna być większa od zera i nie może być ujemna. Jeśli zostanie podana wartość ujemna, zwróci błąd.

Przykład:

Rozważmy tę samą tabelę Studentów.

Rolka nr Nazwa Ocena
12001 Aditya 9
12002 Sahil 6
12003 Hema 8
12004 Robin 9
12005 Sita 7
12006 Anna 10
12007 Yusuf 7
12008 Alek 5
SELECT *
FROM Student
LIMIT 5 OFFSET 2
ORDER BY RollNo;

To zapytanie zwróci 5 pierwszych rekordów tabeli Uczniów z wyłączeniem 2 pierwszych wpisów.

Wyjście:

Rolka nr Nazwa Ocena
12003 Hema 8
12004 Robin 9
12005 Sita 7
12006 Anna 10
12007 Yusuf 7

LIMIT WSZYSTKO

Istnieje jeszcze jedna klauzula podobna do LIMIT, znana jako LIMIT WSZYSTKO . Klauzula LIMIT ALL nie nałoży żadnych ograniczeń i zwróci wszystkie wpisy tabeli.

Przykład:

Rozważmy ponownie tę samą tabelę Studentów.

Rolka nr Nazwa Ocena
12001 Aditya 9
12002 Sahil 6
12003 Hema 8
12004 Robin 9
12005 Sita 7
12006 Anna 10
12007 Yusuf 7
12008 Alek 5

Zapytanie:

SELECT *
FROM Student
LIMIT ALL;
Rolka nr Nazwa Ocena
12001 Aditya 9
12002 Sahil 6
12003 Hema 8
12004 Robin 9
12005 Sita 7
12006 Anna 10
12007 Yusuf 7
12008 Alek 5

SQL ORDER BY Wiele kolumn

SQL ORDER BY Wiele kolumn zwróci wpisy danych w kolumnie, sortując je przy użyciu wielu kolumn podanych w zapytaniu.

Posortuje dane według kolejności nazw kolumn podanych po klauzuli ORDER BY. Nazwy kolumn należy dodać w odpowiedniej kolejności, w jakiej użytkownik chce, aby nastąpiło sortowanie.

Wiele nazw kolumn można dodać, oddzielając je przecinkiem (,). Do określenia kolejności sortowania można również użyć słów kluczowych ASC lub DESC.

Przykład:

Rozważmy następującego Pracownika tabela mająca cztery kolumny, a mianowicie id, imię, nazwisko i wynagrodzenie.

identyfikator imię nazwisko wynagrodzenie
1 Lisa Ułman 3000
2 Ada Muller 2400
3 Thomas Zielony 2400
4 Michael Muller 3000
5 Maryi Zielony 2400

Zapytanie:

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

Wyjście:

identyfikator imię nazwisko wynagrodzenie
4 Michael M grubszy 3000
1 Lisa U lman 3000
3 Thomas G ponownie 2400
5 Maryi G ponownie 2400
2 Ada M grubszy 2400

W związku z tym najpierw posortowano wyniki według wynagrodzenia w porządku malejącym, a następnie według nazwiska w porządku rosnącym. Należy zauważyć, że jeśli nie wymieniono ASC lub DESC, domyślnie posortuje obie kolumny w kolejności rosnącej.

Wniosek

Tak więc powyżej znajdują się niektóre z najważniejszych i najczęściej używanych klauzul ORDER BY, które są używane codziennie przez programistów w celu wykonywania określonych operacji na bazie danych i pobierania danych. Klauzule te mogą być używane pojedynczo lub mogą być również używane razem, w połączony sposób, do wykonywania operacji na bazie danych.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Samouczek SQL:kompleksowe rozwiązanie do nauki SQL

  2. Slajdy i próbki przecięcia SQL

  3. Używanie JShell w Javie 9 w NetBeans 9.0, część 3

  4. Klauzula SQL UNION dla początkujących

  5. Podejścia do bezpieczeństwa w modelowaniu danych. Część 4