logo

ORDINE SQL PER

ORDINE SQL PER La clausola ordina il risultato dell'istruzione SELECT in ordine crescente o decrescente.

pitone __nome__

In questo articolo esploreremo la clausola ORDER BY, esplorandone la sintassi, la funzionalità e l'utilizzo con esempi dettagliati.

ORDINA PER in SQL

IL ORDINATO DA dichiarazione in SQL è abituato a ordinare i dati recuperati in ordine ascendente o discendente secondo una o più colonne. È molto utile presentare i dati in modo strutturato.



La modalità predefinita SQL ORDER BY ordina i dati in ordine crescente. Per ordinare i dati in ordine decrescente utilizzare il comando parola chiave DESC con clausola ORDER BY.

Sintassi

La sintassi per utilizzare la clausola ORDER BY in SQL è:

SELECT * FROM nome_tabella ORDER BY nome_colonna ASC | DESC

Parole chiave:

  • nome_tabella : nome della tabella.
  • nome_colonna: nome della colonna in base alla quale devono essere organizzati i dati.
  • ASC : per ordinare i dati in ordine crescente.
  • DESC : per ordinare i dati in ordine decrescente.

Esempi di clausole SQL ORDER BY

Diamo un'occhiata ad alcuni esempi della clausola SQL ORDER BY per capire come funziona in SQL.

Utilizzeremo la seguente tabella negli esempi.

tabella SQL dimostrativa

Studente_Tabella

Per creare questa tabella, scrivi le seguenti query SQL:

SQL
CREATE TABLE students (  roll_no INT NOT NULL,  age INT NOT NULL,  name VARCHAR(50) NOT NULL,  address VARCHAR(100) NOT NULL,  phone VARCHAR(20) NOT NULL,  PRIMARY KEY (roll_no) ); INSERT INTO students (roll_no, age, name, address, phone) VALUES   (1, 18, 'Shubham Thakur', '123 Main St, Mumbai', '9876543210'),  (2, 19, 'Aman Chopra', '456 Park Ave, Delhi', '9876543211'),  (3, 20, 'Naveen Tulasi', '789 Broadway, Ahmedabad', '9876543212'),  (4, 21, 'Aditya arpan', '246 5th Ave, Kolkata', '9876543213'),  (5, 22, 'Nishant Jain', '369 3rd St, Bengaluru', '9876543214')>

Ora considera la tabella del database sopra e trova i risultati di diverse query.

fattoriale in Java

Ordina in base a una singola colonna utilizzando l'esempio della clausola ORDER BY

In questo esempio, recupereremo tutti i dati dalla tabella Studente e ordineremo il risultato in ordine decrescente in base alla colonna ROLL_NO.

Domanda:

  SELECT   *   FROM   students   ORDER BY   ROLL_NO   DESC  ;>

Produzione:

ordinare in base a una singola colonna utilizzando l'output di esempio della clausola order by

Nell'esempio sopra, se vogliamo ordinare in ordine crescente dobbiamo usare ASC al posto di DESC.

Ordina in base a più colonne utilizzando l'esempio della clausola ORDER BY

Per ordinare in base a più colonne, separare i nomi delle colonne con l'operatore (,).

Sintassi:

stringa della data java

SELECT * FROM nome_tabella ORDER BY colonna1 ASC|DESC , colonna2 ASC|DESC

In questo esempio, recupereremo tutti i dati dalla tabella Studente e quindi ordineremo prima il risultato in ordine decrescente in base alla colonna età . e poi in ordine crescente secondo la colonna nome .

Domanda:

  SELECT   *   FROM   students   ORDER BY   age   DESC   , name   ASC  ;>

Produzione:

inserire nella tastiera
ordinare in base a più colonne utilizzando l'output di esempio della clausola order by

Ordina_Colonne_multiple

Nell'output sopra, possiamo vedere che prima il risultato viene ordinato in ordine decrescente in base all'età. Sono presenti più righe con la stessa età. Ora, ordinando ulteriormente questo set di risultati in base al nome ordinerai le righe con la stessa età in base al nome in ordine crescente.

Nota:

ASC è il valore predefinito per la clausola ORDER BY. Pertanto, se non specifichiamo nulla dopo il nome della colonna nella clausola ORDER BY, l'output verrà ordinato in ordine crescente per impostazione predefinita.

Ordinamento per numero di colonna (invece che per nome)

Un numero intero che identifica il numero della colonna in SelectItems nella query sottostante di Istruzione SELEZIONATA . Il numero di colonna deve essere maggiore di 0 e non maggiore del numero di colonne nella tabella dei risultati. In altre parole, se vogliamo ordinare per colonna, quella colonna deve essere specificata nell'elenco SELECT.

La regola verifica la presenza di clausole ORDER BY che fanno riferimento alle colonne dell'elenco di selezione utilizzando il numero di colonna anziché il nome della colonna. I numeri di colonna nella clausola ORDER BY compromettono la leggibilità dell'istruzione SQL. Inoltre, la modifica dell'ordine delle colonne nell'elenco SELECT non ha alcun impatto su ORDER BY quando le colonne vengono indicate con nomi invece che con numeri.

Sintassi

La sintassi per utilizzare la clausola ORDER BY con il numero di colonna

mysql non è uguale

ORDINATO DA Colonna_Numero asc/desc

Esempio di ordinamento per numero di colonna

Qui prendiamo un esempio per ordinare una tabella del database in base alla colonna 1, ovvero il numero di rotolo. Per questo una query sarà:

Domanda:

  CREATE TABLE   studentinfo ( Roll_no INT, NAME VARCHAR(25), Address VARCHAR(20), CONTACTNO BIGINT NOT NULL, Age INT );   INSERT INTO   studentinfo   VALUES   (7,'ROHIT','GHAZIABAD',9193458625,18), (4,'DEEP','RAMNAGAR',9193458546,18), (1,'HARSH','DELHI',9193342625,18), (8,'NIRAJ','ALIPUR',9193678625,19), (5,'SAPTARHI','KOLKATA',9193789625,19), (2,'PRATIK','BIHAR',9193457825,19), (6,'DHANRAJ','BARABAJAR',9193358625,20), (3,'RIYANKA','SILIGURI',9193218625,20);   SELECT   Roll_no,     Name, Address   FROM   studentinfo   ORDER BY   1>

Produzione:

Ordinamento per numero di colonna

Spiegazione:

ORDINA PER 1 significa ordinare i valori in base alla prima colonna nell'istruzione SELECT.

Punti importanti sulla clausola ORDER BY in SQL

  • La clausola ORDER BY in SQL viene utilizzata per ordinare il set di risultati di un'istruzione SELECT in base alle colonne specificate.
  • È essenziale per organizzare i risultati delle query e presentare i dati in modo strutturato.
  • Può ordinare i dati in ordine ascendente (ASC) o discendente (DESC).
  • È possibile specificare più colonne per l'ordinamento, consentendo criteri di ordinamento più complessi.
  • Possiamo usare ORDER BY con Dove la clausola , Clausola GRUPPO BY , E Clausola AVENTE .