Oppsummering: i denne opplæringen vil du lære hvordan du bruker SQL Server RANK() funksjonen til å beregne en verdi for hver rad i en partisjon av et resultatsett.
Introduksjon til SQL Server-RANK () – funksjonen
RANK() funksjon er et vindu funksjon som tilordner en verdi til hver rad i en partisjon av et resultatsett.
radene i en partisjon som har de samme verdiene vil motta det samme rang. Rang i første rekke innenfor en partisjon er en., RANK() funksjonen gir antall bundet rader til bundet rang for å beregne graden av neste rad, derfor rekker kanskje ikke være sammenhengende.
følgende viser syntaks for RANK() funksjoner:
I denne syntaks:
- Første
PARTITION BYklausulen deler rader av resultat partisjoner som funksjonen som er brukt. - Andre
ORDER BYklausul som angir det logiske sortere rekkefølgen på radene i hver en partisjon som funksjonen som er brukt.,
RANK() funksjonen er nyttig for topp-N og bunn-N rapporter.,»>
Andre, sette inn noen rader i sales.rank_demo tabell:
Code language: SQL (Structured Query Language) (sql)
Tredje, spørring data fra sales.rank_demo tabell:
Code language: SQL (Structured Query Language) (sql)
Fjerde, bruk ROW_NUMBER() for å tilordne rekker til rader i resultatet sett av sales.rank_demo tabell:
Code language: SQL (Structured Query Language) (sql)
Her er resultatet:
Som vist tydelig fra produksjonen, andre og tredje rad får samme verdi fordi de har samme verdi B., Den fjerde og femte rader få rang 4 fordi RANK() funksjon hopper rang 3, og begge har også de samme verdiene.,iv id=»6657ab2abb»>
funksjoner:
ved Hjelp av SQL Server-RANK() funksjon over et resultatsett eksempel
dette eksemplet bruker RANK() funksjonen til å tilordne rekker til produkter av sin liste priser:
Her er resultat:
I dette eksempelet, fordi vi hoppet PARTITION BY klausulen, RANK() funksjon behandlet hele resultatsett som en enkelt partisjon.,
RANK() funksjonen tilordner en verdi til hver rad i resultatsettet sortert etter listepris fra høy til lav.,
ved Hjelp av SQL Server-RANK () – funksjonen over partisjoner eksempel
Dette eksemplet bruker RANK() funksjonen til å tilordne en verdi til hvert enkelt produkt av listepris i hvert merke og returnerer produkter med verdi på mindre enn eller lik tre:
følgende bilde viser resultatet:
I dette eksempelet:
- Første
PARTITION BYklausulen deler produktene inn partisjoner av merkevare-Id., - Andre
ORDER BYklausulen slags produkter i hver partisjon av liste priser. - Tredje, den ytre spørringen returnerer produkter som rangerer verdier som er mindre enn eller lik tre.
RANK() funksjon er brukt på hver rad i hver partisjon og reinitialized når du krysser partisjonen er grensen.
I denne opplæringen, har du lært hvordan du bruker SQL Server RANK() funksjonen til å tilordne en verdi til hver rad i en partisjon av et resultatsett.