Oppsummering: i denne opplæringen vil du lære hvordan å bruke SQLite RANK()
funksjon for å beregne rekkene for rader i en spørringens resultatsett.
Introduksjon til SQLite RANK () – funksjonen
RANK()
funksjon er et vindu funksjon som tilordner en verdi til hver rad i en spørringens resultatsett. Rang av en rad er beregnet ved ett pluss antall rekker som kommer før det.,
følgende viser syntaks for RANK()
funksjoner:
I denne syntaks:
- Første
PARTITION BY
klausulen deler rader av resultat sett i partisjoner. - Andre
ORDER BY
punkt angir bestillinger av rader i hver en partisjon. - Tredje,
RANK()
funksjon er brukt på hver rad i hver partisjon og re-aktivert når du krysser partisjon grensen.
Den samme kolonnen verdier vil motta det samme rekkene., Når flere rader med samme verdi (rang av neste rad er ikke sammenhengende. Dette er som Ol-medalje der hvis to utøvere dele gull, vil det ikke være noe sølv.,913ee4e2a9″>
Tredje, spørring data fra RankDemo
tabell:
Fjerde, bruk RANK()
funksjonen til å tilordne rekker til rader i resultatet sett av RankDemo
tabell:
Her er resultatet:
Som du kan se klart fra produksjonen, tredje og fjerde rader får samme verdi fordi de har samme verdi., Femte rad får rang 5 fordi RANK()
funksjon hopper rang 4.
SQLite RANK () – funksjonen eksempler
for Å demonstrere RANK()
funksjon, vil vi bruke tracks
tabell fra eksempeldatabasen.,
Bruker SQLite RANK () – funksjonen med BESTILLING AV punkt eksempel
følgende uttalelse bruker RANK()
funksjonen til å rangere spor av deres lengder:
I dette eksemplet, vi hoppet PARTITION BY
klausulen, derfor, RANK()
funksjon behandler hele resultatsett som en enkelt partisjon.
Første ORDER BY
klausulen sorterer spor av deres lengder (Milliseconds
kolonne).,
Andre RANK()
funksjon er brukt på hver rad i resultatsettet vurderer bestillinger spor av deres lengder.,
Bruker SQLite RANK () – funksjonen med PARTISJON VED eksempel
følgende uttalelse bruker RANK()
funksjonen til å tilordne en verdi til hvert spor i hvert album:
følgende bilde viser delvis utgang:
I dette eksempelet:
- Første
PARTITION BY
klausulen deler spor i album. - Da
ORDER BY
klausulen sorterer spor av deres lengder., - til Slutt,
RANK()
funksjonen tilordner en verdi til hvert spor i hvert album. Hvis album endringer,RANK()
funksjon re-initialiserer verdi verdi.
Det er mulig å finne den nest lengste spor i hvert album ved å bruke følgende subquery:
output er som følger:
I denne opplæringen, har du lært hvordan du bruker SQLite RANK()
funksjonen til å tilordne en verdi til hver rad i et resultatsett.,
- Var denne opplæringen nyttig ?
- YesNo