logo

RANK() Funktion i SQL Server

SQL RANK() funktion er en vinduesfunktion, der bruges i SQL Server der beregner rangeringen af ​​hver række af resultatsæt .

RANK funktion i SQL Server

RANK-funktionen i SQL-serveren bruges til at tildele en rang til hver række baseret på dens værdi.



Den samme rang tildeles de rækker, der har samme værdier. Rækkerne er muligvis ikke fortløbende i RANK() funktion da den tilføjer antallet af gentagne rækker til den gentagne rangorden for at beregne rangeringen af ​​den næste række.

java sort arraylist

Syntaks

Syntaksen for at bruge RANK-funktionen i SQL Server er:

RANK() OVER (
[OPDELING EFTER udtryk, ]
ORDER BY udtryk (ASC | DESC) );



Bemærk:

Nogle andre Rank-funktioner, der bruges i SQL Server, er:

Eksempel på SQL RANK-funktion

Lad os se på nogle eksempler på RANK-funktionen i SQL-serveren for at forstå, hvordan den fungerer.



Lad os oprette en demo-tabel, hvorpå vi udfører RANK-sætningen. Skriv følgende forespørgsler for at oprette en tabel 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;>

Produktion

tostring metode
Navn
EN
B
B
C
C
D
OG

I dette eksempel vil vi bruge RANK() til at tildele rækker til rækkerne i resultatsættet af tabellen geek_demo.

Forespørgsel:

  SELECT   Name,    RANK () OVER   (   ORDER BY   Name )   AS   Rank_no    FROM   geek_demo;>

Output –

Navn Rank_nr
EN 1
B 2
B 2
C 4
C 4
D 6
OG 7

Vigtige punkter om SQL RANK-funktionen

  • SQL RANK-funktionen er en vinduesfunktion, der bruges i SQL Server til at beregne en rang for hver række.
  • Den tildeler en unik rang til hver række i partitionen med huller i rangværdier, hvis der er ligheder.
  • RANK-funktionen giver dig mulighed for at rangere rækker baseret på en specificeret kolonne eller et sæt af kolonner, hvilket giver en klar rækkefølge inden for resultatsættet.
  • Når vi bruger SQL RANK-funktionen med ORDER BY klausul , resultatsættet returneres med sorterede rækker i hver partition, hvor RANK-funktionen anvendes.
  • Den samme rangering tildeles de rækker, som har de samme værdier.