logo

Funzione RANK() in SQL Server

Funzione SQL RANK() è una funzione finestra utilizzata in server SQL che calcola il rango di ciascuna riga del file insieme di risultati .

Funzione RANK in SQL Server

La funzione RANK nel server SQL viene utilizzata per assegnare un rango a ciascuna riga in base al suo valore.



Lo stesso rango viene assegnato alle righe che hanno gli stessi valori. I ranghi non possono essere consecutivi nella RANGO() poiché aggiunge il numero di righe ripetute al rango ripetuto per calcolare il rango della riga successiva.

Sintassi

La sintassi per utilizzare la funzione RANK in SQL Server è:

RANGO() SOPRA (
[espressione PARTITION BY,]
ORDER BY espressione (ASC | DESC) );



istanza di Java

Nota:

Alcune altre funzioni di classificazione utilizzate in SQL Server sono:

Esempio di funzione SQL RANK

Diamo un'occhiata ad alcuni esempi della funzione RANK nel server SQL per capire come funziona.



Creiamo una tabella demo sulla quale eseguiremo l'istruzione RANK. Scrivi le seguenti query per creare una tabella geek_demo.

  CREATE TABLE   geek_demo (Name VARCHAR(10) );   INSERT INTO   geek_demo (Name)   VALUES   ('A'), ('B'), ('B'), ('C'), ('C'), ('D'), ('E');   SELECT   *   FROM   sales.geek_demo;>

Produzione

Nome
UN
B
B
C
C
D
E

In questo esempio utilizzeremo RANK() per assegnare ranghi alle righe nel set di risultati della tabella geek_demo.

Domanda:

è uguale alla stringa in Java
  SELECT   Name,    RANK () OVER   (   ORDER BY   Name )   AS   Rank_no    FROM   geek_demo;>

Produzione -

Nome Rank_no
UN 1
B 2
B 2
C 4
C 4
D 6
E 7

Punti importanti sulla funzione SQL RANK

  • La funzione SQL RANK è una funzione di finestra utilizzata in SQL Server per calcolare una classifica per ogni riga.
  • Assegna un rango univoco a ciascuna riga all'interno della partizione, con lacune nei valori di rango in caso di parità.
  • La funzione RANK consente di classificare le righe in base a una colonna o a un insieme di colonne specificato, fornendo un chiaro ordine di precedenza all'interno del set di risultati.
  • Quando utilizziamo la funzione SQL RANK con Clausola ORDER BY , il set di risultati viene restituito con righe ordinate in ciascuna partizione in cui viene applicata la funzione RANK.
  • Lo stesso rango viene assegnato alle righe che hanno gli stessi valori.