Riepilogo: in questo tutorial imparerai come utilizzare ROW_NUMBER()
per assegnare un numero sequenziale a ciascuna riga in un set di risultati di query.
Panoramica della funzione SQL ROW_NUMBER ()
ROW_NUMBER()
è una funzione finestra che assegna un numero intero sequenziale a ogni riga nel set di risultati della query.
Quanto segue illustra la sintassi della funzione ROW_NUMBER()
:
In questa sintassi,
- Innanzitutto, la clausola
PARTITION BY
divide il set di risultati restituito dal FROM
clausola nelle partizioni. La clausola PARTITION BY
è facoltativa. Se lo ometti, l’intero set di risultati viene trattato come una singola partizione.
- Quindi, la clausola
ORDER BY
ordina le righe in ciascuna partizione. Poiché ROW_NUMBER()
è una funzione sensibile all’ordine, è richiesta la clausola ORDER BY
.
- Infine, ogni riga in ciascuna alla partizione viene assegnato un numero intero sequenziale chiamato numero di riga. Il numero di riga viene reimpostato ogni volta che viene superato il limite della partizione.
Esempi SQL ROW_NUMBER ()
Useremo employees
e departments
dal database di esempio per la dimostrazione:
A) Semplice esempio SQL ROW_NUMBER ()
La seguente istruzione trova il nome, il cognome e lo read more