logo

RANK() funkcija SQL serverī

SQL RANK() funkcija ir loga funkcija, ko izmanto SQL serveris kas aprēķina katras rindas rangu rezultātu komplekts .

RANK funkcija SQL serverī

Funkcija RANK SQL serverī tiek izmantota, lai katrai rindai piešķirtu rangu, pamatojoties uz tās vērtību.



Tāds pats rangs tiek piešķirts rindām, kurām ir vienādas vērtības. Rangas nedrīkst būt pēc kārtas RANK() funkcija jo tas pievieno atkārtoto rindu skaitu atkārtotajam rangam, lai aprēķinātu nākamās rindas rangu.

Sintakse

Sintakse funkcijas RANK izmantošanai SQL Server ir:

RANK() OVER (
[PARTITION BY izteiksme, ]
ORDER BY izteiksme (ASC | DESC) );



Piezīme:

Dažas citas SQL Server izmantotās ranga funkcijas ir:

SQL RANK funkcijas piemērs

Apskatīsim dažus RANK funkcijas piemērus SQL serverī, lai saprastu, kā tā darbojas.



Izveidosim demonstrācijas tabulu, kurā izpildīsim RANK paziņojumu. Uzrakstiet šādus vaicājumus, lai izveidotu tabulu 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;>

Izvade

Vārds
A
B
B
C
C
D
UN

Šajā piemērā mēs izmantosim RANK(), lai piešķirtu rindas tabulas geek_demo rezultātu kopas rindām.

Vaicājums:

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

Izvade -

Vārds Ranga_nr
A 1
B 2
B 2
C 4
C 4
D 6
UN 7

Svarīgi punkti par SQL RANK funkciju

  • Funkcija SQL RANK ir loga funkcija, ko izmanto SQL Server, lai aprēķinātu katras rindas rangu.
  • Tas piešķir unikālu rangu katrai nodalījuma rindai, un rangu vērtībās ir nepilnības, ja ir saites.
  • Funkcija RANK ļauj ranžēt rindas, pamatojoties uz noteiktu kolonnu vai kolonnu kopu, nodrošinot skaidru prioritātes secību rezultātu kopā.
  • Kad mēs izmantojam funkciju SQL RANK ar PASŪTĪT PĒC klauzulas , rezultātu kopa tiek atgriezta ar sakārtotām rindām katrā nodalījumā, kurā tiek lietota funkcija RANK.
  • Tāds pats rangs tiek piešķirts rindām, kurām ir vienādas vērtības.