Funkcija SQL Server Last_Value().

Funkcija Sql Server Last Value



Namen te vadnice je, da vas vodi k razumevanju funkcije last_value() v strežniku SQL Server. Funkcija vam omogoča, da pridobite zadnjo vrednost v urejenem nizu vrednosti ali particiji.

Sintaksa funkcije

Spodaj je sintaksa funkcije last_value.

ZADNJA_VREDNOST ( [ skalarni_izraz ] )  [ IGNORE NULLS | RESPECT NULLS ]
NAD ([particija_po_klavzuli] order_by_clause [vrstica_razpon_klavzule])

Argumenti funkcije so:







  1. skalarni_izraz – to definira vrednost, ki bo vrnjena. To je lahko obstoječi stolpec, podpoizvedba ali izraz, ki vrne eno samo vrednost.
  2. IGNORE NULLS – to omogoča funkciji, da prezre ničelne vrednosti v danem nizu pri določanju zadnje vrednosti na particiji
  3. RESPECT NULL – to je nasprotje klavzule IGNORE NULL. Funkcijo prisili, da pri določanju zadnje vrednosti na particiji upošteva vrednosti NULL.
  4. PARTITION BY – razdeli vrstice danega rezultata na različne particije. Funkcija last_value se nato uporabi za te particije. Če klavzula partition_by manjka, bo funkcija nabor rezultatov obravnavala kot eno skupino.
  5. ORDER BY – to določa, v kakšnem vrstnem redu si sledijo vrstice v dani particiji.
  6. Rows_range – ta člen omejuje vrstice v dani particiji. To deluje z nastavitvijo začetne in končne vrednosti.

Funkcija vrne vrsto podanega skalarnega_izraza.



Uporaba funkcije last_value nad naborom rezultatov

Recimo, da imamo tabelo, kot je prikazano:







Funkcijo last_value() lahko uporabimo nad nizom rezultatov, kot je prikazano v spodnjem primeru poizvedbe:

izberite
SERVER_NAME,
NASLOV STREŽNIKA ,
COMPRESSION_METHOD,
SIZE_ON_DISK,
last_value(size_on_disk) over(
vrstni red po obsegu size_on_disk med neomejenim predhodnim in neomejenim naslednjim) največji
od
VPISI E;

Dobljene vrednosti:



Uporaba funkcije last_value nad particijo

Funkcijo last_value() lahko uporabimo tudi nad particijo, kot je prikazano v spodnjem primeru:

izberite
SERVER_NAME,
NASLOV STREŽNIKA ,
COMPRESSION_METHOD,
SIZE_ON_DISK,
last_value(size_on_disk) over(partition by COMPRESSION_METHOD
vrstni red po obsegu size_on_disk med neomejenim predhodnim in neomejenim naslednjim) največji
od
VPISI E;

V tem primeru so podatki razvrščeni v različne particije glede na metodo stiskanja.

Dobljena vrednost je prikazana:

V zgornji tabeli imamo pet particij, pri čemer je največja vrednost v vsaki particiji prikazana v največjem stolpcu.

Zaključek

V tej vadnici ste se naučili, kako uporabiti funkcijo SQL Server last_value() za pridobitev zadnje vrednosti v urejenem nizu ali particiji.