logo

RANK() Funktion i SQL Server

SQL RANK() funktion är en fönsterfunktion som används i SQL Server som beräknar rangen för varje rad i resultatet satt .

RANK-funktion i SQL Server

RANK-funktionen i SQL-servern används för att tilldela en rangordning till varje rad baserat på dess värde.



Samma rang tilldelas de rader som har samma värden. Leden kanske inte är på varandra följande i RANK() funktion eftersom den lägger till antalet upprepade rader till den upprepade rankningen för att beräkna rankningen för nästa rad.

Syntax

Syntaxen för att använda RANK-funktionen i SQL Server är:

RANK() ÖVER (
[PARTITION BY expression, ]
ORDER BY expression (ASC | DESC) );



Notera:

Några andra Rank-funktioner som används i SQL Server är:

Exempel på SQL RANK-funktion

Låt oss titta på några exempel på RANK-funktionen i SQL-servern för att förstå hur den fungerar.



Låt oss skapa en demotabell där vi kommer att utföra RANK-satsen. Skriv följande frågor för att skapa en tabell 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

namn
A
B
B
C
C
D
OCH

I det här exemplet kommer vi att använda RANK() för att tilldela rankningar till raderna i resultatuppsättningen av tabellen geek_demo.

Fråga:

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

Utgång –

namn Rank_no
A 1
B 2
B 2
C 4
C 4
D 6
OCH 7

Viktiga punkter om SQL RANK-funktionen

  • SQL RANK-funktionen är en fönsterfunktion som används i SQL Server för att beräkna en rankning för varje rad.
  • Den tilldelar en unik rangordning till varje rad inom partitionen, med luckor i rangvärden om det finns liknande.
  • RANK-funktionen låter dig rangordna rader baserat på en specificerad kolumn eller uppsättning kolumner, vilket ger en tydlig prioritetsordning inom resultatuppsättningen.
  • När vi använder SQL RANK-funktionen med ORDER BY klausul , resultatuppsättningen returneras med sorterade rader i varje partition där RANK-funktionen används.
  • Samma rang tilldelas de rader som har samma värden.