SQL RANK()-funktio on ikkunatoiminto, jota käytetään SQL Server joka laskee kunkin rivin sijoituksen tulossarja .
RANK-toiminto SQL Serverissä
SQL-palvelimen RANK-funktiota käytetään antamaan jokaiselle riville arvo sen arvon perusteella.
Riveille, joilla on samat arvot, annetaan sama arvo. Riveissä ei saa olla peräkkäisiä RANK()-funktio kun se lisää toistuvien rivien lukumäärän toistuvaan järjestykseen seuraavan rivin arvon laskemiseksi.
Syntaksi
RANK-funktion syntaksi SQL Serverissä on:
SIJOITUS() YLI (
[PARTITION BY lausekkeella, ]
ORDER BY lauseke (ASC | DESC) );
Huomautus:
Jotkut muut SQL Serverissä käytetyt Rank-toiminnot ovat:
- ROW_NUMBER()
- DENSE_RANK()
- TILE()
Esimerkki SQL RANK -funktiosta
Katsotaanpa joitain esimerkkejä SQL-palvelimen RANK-funktiosta ymmärtääksemme, kuinka se toimii.
Luodaan esittelytaulukko, jossa suoritamme RANK-lausekkeen. Kirjoita seuraavat kyselyt luodaksesi taulukon 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;>
Lähtö
Nimi |
---|
A |
B |
B |
C |
C |
D |
JA |
Tässä esimerkissä käytämme RANK()-funktiota geek_demo-taulukon tulosjoukon riveille asettamiseen.
Kysely:
SELECT Name, RANK () OVER ( ORDER BY Name ) AS Rank_no FROM geek_demo;>
Lähtö –
Nimi | Sijoitusnro |
---|---|
A | 1 |
B | 2 |
B | 2 |
C | 4 |
C | 4 |
D | 6 |
JA | 7 |
Tärkeitä kohtia SQL RANK -funktiosta
- SQL RANK -funktio on ikkunafunktio, jota käytetään SQL Serverissä kunkin rivin arvon laskemiseen.
- Se määrittää jokaiselle osion riville yksilöllisen arvon, ja arvoissa on aukkoja, jos tasoja on.
- RANK-toiminnon avulla voit asettaa rivit paremmuusjärjestykseen tietyn sarakkeen tai sarakejoukon perusteella, mikä tarjoaa selkeän tärkeysjärjestyksen tulosjoukon sisällä.
- Kun käytämme SQL RANK -funktiota TILAA lausekkeen mukaan , tulosjoukko palautetaan lajiteltuina riveinä jokaisessa osiossa, jossa RANK-funktiota käytetään.
- Riveille, joilla on samat arvot, annetaan sama arvo.