Clausola ORDER BY in SQL - Tipo diverso di clausola ORDER BY in SQL

Sommario:

Anonim

Introduzione alla clausola ORDER BY in SQL

La clausola ORDER BY in SQL ci aiuta a classificare i nostri dati in ordine crescente o decrescente, a seconda delle colonne delle nostre tabelle. ORDER BY è la parola chiave utilizzata nella nostra query per aiutarci a ordinare i dati. Per impostazione predefinita, alcuni database classificano i risultati restituiti dalla query in ordine crescente. Per ordinare i dati presenti nei record in ordine decrescente, utilizziamo la parola chiave DESC nella nostra query. Abbiamo anche la parola chiave ASC per classificare i dati in ordine crescente, anche se principalmente non li usiamo a causa delle impostazioni predefinite del database.

Parametri della clausola ORDER BY in SQL

  • nome_colonna: indica il nome della colonna che desideriamo recuperare in base alla disposizione dei dati.
  • table_name: indica il nome della tabella da cui ottenere i record. Dobbiamo avere almeno un nome di tabella in questo parametro.
  • Condizione WHERE: questo è un parametro opzionale. La clausola WHERE contiene le condizioni che dobbiamo soddisfare affinché i dati vengano scelti.
  • ASC : questa è la parola chiave utilizzata per ordinare i dati della colonna in ordine crescente. Se non viene menzionata alcuna parola chiave, i dati vengono ordinati in ordine crescente per impostazione predefinita.
  • DESC: questa è la parola chiave utilizzata per ordinare i dati della colonna in ordine decrescente.
  • |: Questo è solo un indicatore di "OR", poiché dobbiamo utilizzare ASC o DESC nella nostra query di conseguenza per i risultati.

ORDINA PER Clausola

La sintassi di ORDER BY è:

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

Sintassi per l'ordinamento dei dati in base a una singola colonna

Per ordinare i dati della tabella in base a una singola colonna in ordine crescente o decrescente, è possibile utilizzare le parole chiave ASC o DESC. Nel nostro esempio, ordineremo i dati in ordine crescente utilizzando quindi la parola chiave ASC.

Sintassi

SELECT * FROM table_name ORDER BY column_name ASC

La sintassi per ordinare i dati in base a diverse colonne

Per ordinare i dati della tabella in base a più colonne in ordine crescente o decrescente, è possibile utilizzare le parole chiave ASC o DESC. Per menzionare le diverse colonne in base alle quali verranno ordinati i dati, è necessario menzionare i nomi delle colonne separate dall'operatore virgola (, ). Nel nostro esempio, ordineremo i dati in ordine crescente utilizzando quindi la parola chiave ASC.

Sintassi

SELECT * FROM table_name ORDER BY column1 ASC, column2 ASC

Esempi di clausola ORDER BY

Esaminiamo vari esempi per comprendere meglio la clausola ORDER BY.

1. Esempio per ordinare i risultati in un ordine crescente

Per classificare i risultati in ordine crescente, possiamo usare la parola chiave ASC. Se non è stata fornita alcuna parola chiave, ASC o DESC, l'ordine di ordinamento predefinito è crescente. Cerchiamo di capirlo con l'aiuto di un esempio. Abbiamo una tabella dei dipendenti.

ID DipendenteEmployeeLastNameEmployeeFirstNameE-mail identificativo utente
001 Donald Jo
002 fabbro Jamie
003 Jones Amy
004 Reynolds Andy
005 Tommaso sortita
006 Marrone Dan

Quando proviamo a disporre i risultati in ordine crescente del cognome del Dipendente, possiamo usare la seguente dichiarazione e il risultato che segue viene visualizzato nella tabella dopo.

SELECT *
FROM Employee
ORDER BY EmployeeLastName;

Risultato

ID DipendenteEmployeeLastNameEmployeeFirstNameE-mail identificativo utente
006 Marrone Dan
001 Donald Jo
003 Jones Amy
004 Reynolds Andy
002 fabbro Jamie
005 Tommaso sortita

In questo esempio vengono restituiti tutti i record della tabella Employee ordinati in ordine crescente in base al campo EmployeeLastName. Possiamo anche usare la parola chiave ASC come segue, per ottenere lo stesso risultato.

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

2. Esempio per ordinare i risultati in ordine decrescente

Usiamo la parola chiave DESC quando vogliamo ordinare i nostri dati in ordine decrescente, nella nostra clausola ORDER BY. Cerchiamo di capirlo con l'aiuto di un esempio. Abbiamo la stessa tabella Employee contenente i seguenti dati.

ID DipendenteEmployeeLastNameEmployeeFirstNameE-mail identificativo utente
001 Donald Jo
002 fabbro Jamie
003 Jones Amy
004 Reynolds Andy
005 Tommaso sortita
006 Marrone Dan

Abbiamo bisogno solo di dipendenti il ​​cui EmployeeID sia maggiore di 2 e abbiamo bisogno che i nostri dati siano ordinati in ordine decrescente. Usiamo la seguente istruzione SQL per lo stesso e otteniamo la tabella del set di risultati con solo 4 record.

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

Risultato:

ID Dipendente EmployeeLastName EmployeeFirstName E-mail identificativo utente
006 Marrone Dan
005 Tommaso sortita
004 Reynolds Andy
003 Jones Amy

3. Esempio per ordinare i risultati in base alla loro posizione relativa

Possiamo anche organizzare i nostri dati in base alla posizione relativa delle colonne, dove 1 rappresenta il primo campo, 2 rappresenta il secondo campo, 3 rappresenta il terzo campo e così via. Proviamo a disporre i dati nella nostra tabella Dipendente in base alle posizioni relative.

ID DipendenteEmployeeLastNameEmployeeFirstNamee-mail
001 Donald Jo
002 fabbro Jamie
003 Jones Amy
004 Reynolds Andy
005 Tommaso sortita
006 Marrone Dan

Usando l'istruzione SQL come segue, possiamo disporre i dati in ordine decrescente di EmployeeID. Abbiamo anche affermato che sono necessarie solo due colonne dalla tabella, ovvero EmployeeID e EmployeeLastName, insieme all'utilizzo della clausola WHERE per menzionare che non vogliamo alcuna riga contenente EmployeeID 003.

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

Risultato

ID DipendenteEmployeeLastName
006 Marrone
005 Tommaso
004 Reynolds
002 fabbro
001 Donald

Poiché la colonna nella posizione 1 è EmployeeID, il set di risultati viene ordinato in base a EmployeeID.

Conclusione

In SQL, l'istruzione SELECT non restituisce i dati in alcun ordine specifico. Per garantire un ordine particolare, utilizziamo la clausola ORDER BY. ORDINA PER ordina in base a una o più colonne. I record vengono restituiti in ordine crescente o decrescente. Se la parola chiave ASC o DESC non è stata fornita, i risultati verranno classificati in ordine crescente.

Articolo raccomandato

Questa è stata una guida alla clausola ORDER BY in SQL. Qui discutiamo i parametri e i diversi esempi della clausola ORDER BY insieme alla sintassi. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Vantaggi di NoSQL
  2. Strumenti di gestione SQL
  3. Funzioni stringa T-SQL
  4. Tipi di dati PostgreSQL
  5. Diversi tipi di dati SQL con esempi