SQL Server Last_Value -funksjonen

SQL Server Last_Value -funksjonen
Denne opplæringen tar sikte på å veilede deg i å forstå Last_Value () -funksjonen i SQL Server. Funksjonen lar deg hente den siste verdien i et bestilt sett med verdier eller en partisjon.

Funksjonssyntaks

Nedenfor er syntaks for Last_Value -funksjonen.

Last_value ([scalar_expression]) [Ignorer nulls | Respekt NULLS]
Over ([partition_by_clause] order_by_clause [rows_range_clause])

Funksjonsargumentene er:

  1. Scalar_expression - Dette definerer verdien som skal returneres. Dette kan være en eksisterende kolonne, et underspørs eller et uttrykk som går tilbake til en enkelt verdi.
  2. Ignorer NULLS - Dette gjør at funksjonen kan ignorere nullverdier i det gitte settet når du bestemmer den siste verdien over en partisjon
  3. Respekt null - dette er det motsatte av ignorering av null -klausulen. Det tvinger funksjonen til å vurdere nullverdier når du bestemmer den siste verdien over en partisjon.
  4. Partisjon av - skiller radene med et gitt resultat i forskjellige partisjoner. Last_Value -funksjonen blir deretter brukt på disse partisjonene. Hvis Partition_by -klausulen mangler, vil funksjonen behandle resultatsettet som en enkelt gruppe.
  5. Bestilling av - Dette bestemmer i hvilken rekkefølge radene i en gitt partisjon Følg.
  6. Rows_range - Denne klausulen begrenser radene i en gitt partisjon. Dette fungerer ved å sette en start- og sluttverdi.

Funksjonen returnerer typen av den spesifiserte scalar_expression.

Bruke Last_Value -funksjonen over et resultatsett

Anta at vi har et bord som vist:

Vi kan bruke Last_Value () -funksjonen over et resultatsett, som vist i eksemplet på spørringen nedenfor:

plukke ut
SERVER NAVN,
SERVER ADRESSE ,
Komprimering_metod,
Størrelse_on_disk,
last_value (size_on_disk) over (
Bestill etter størrelse_on_diskområde mellom ubegrenset foregående og ubegrenset følgende) største
fra
Oppføringer E;

Resulterende verdier:

Bruke Last_Value -funksjonen over en partisjon

Vi kan også bruke Last_Value () -funksjonen over partisjon som vist i eksemplet nedenfor:

plukke ut
SERVER NAVN,
SERVER ADRESSE ,
Komprimering_metod,
Størrelse_on_disk,
last_value (size_on_disk) over (partisjon av compression_method
Bestill etter størrelse_on_diskområde mellom ubegrenset foregående og ubegrenset følgende) største
fra
Oppføringer E;

I dette tilfellet er dataene gruppert i forskjellige partisjoner basert på kompresjonsmetoden.

Den resulterende verdien er som vist:

I tabellen ovenfor har vi fem partisjoner, med den maksimale verdien i hver partisjon som vises i den største kolonnen.

Konklusjon

I denne opplæringen lærte du hvordan du bruker SQL Server Last_Value () -funksjonen for å få den siste verdien i et bestilt sett eller partisjon.