SQL Server Last_Value() -funktio

Sql Server Last Value Funktio



Tämän opetusohjelman tarkoituksena on opastaa sinua ymmärtämään last_value()-funktio SQL Serverissä. Toiminnon avulla voit noutaa järjestetyn arvojoukon tai osion viimeisen arvon.

Funktion syntaksi

Alla on last_value-funktion syntaksi.

LAST_ARVO ( [ skalaari_lauseke ] )  [ OHITTAA NOLLAJA | RESPECT NULLS ]
YLI ( [ osio_lauseittain ] järjestys lauseittain [ rivin_välilause ] )

Funktion argumentit ovat:







  1. skalaarilauseke – tämä määrittää palautettavan arvon. Tämä voi olla olemassa oleva sarake, alikysely tai lauseke, joka palauttaa yhteen arvoon.
  2. OHITA NOLLAJA – tämä sallii funktion jättää huomiotta nolla-arvot annetussa joukossa määrittäessään viimeistä arvoa osion yli
  3. RESPECT NULL – tämä on IGNORE NULL -lauseen vastakohta. Se pakottaa funktion ottamaan huomioon NULL-arvot määrittäessään viimeistä arvoa osion yli.
  4. OSIOTIEDOT – jakaa tietyn tuloksen rivit eri osioihin. Viimeinen_arvo-funktiota sovelletaan sitten näihin osioihin. Jos partition_by-lause puuttuu, funktio käsittelee tulosjoukkoa yhtenä ryhmänä.
  5. ORDER BY – tämä määrittää, missä järjestyksessä tietyn osion rivit seuraavat.
  6. Rivit_alue – tämä lauseke rajoittaa tietyn osion rivejä. Tämä toimii asettamalla aloitus- ja loppuarvon.

Funktio palauttaa määritetyn skalaarilausekkeen tyypin.



Last_value-funktion käyttäminen tulosjoukon yli

Oletetaan, että meillä on seuraavanlainen taulukko:







Voimme käyttää last_value()-funktiota tulosjoukossa alla olevan esimerkkikyselyn mukaisesti:

valitse
PALVELIMEN NIMI,
PALVELIMEN OSOITE ,
COMPRESSION_METHOD,
SIZE_ON_DISK,
last_value(size_on_disk) over(
järjestys koko_levyllä -alueen rajaamattoman edeltävän ja rajoittamattoman seuraavan välillä) suurin
alkaen
KIRJOITUKSET E;

Tuloksena olevat arvot:



Last_value-funktion käyttäminen osion yli

Voimme myös käyttää last_value()-funktiota osion päällä alla olevan esimerkin mukaisesti:

valitse
PALVELIMEN NIMI,
PALVELIMEN OSOITE ,
COMPRESSION_METHOD,
SIZE_ON_DISK,
last_value(size_on_disk) over(osio COMPRESSION_METHOD:lla
järjestys koko_levyllä -alueen rajaamattoman edeltävän ja rajoittamattoman seuraavan välillä) suurin
alkaen
KIRJOITUKSET E;

Tällöin tiedot ryhmitellään eri osioihin pakkausmenetelmän perusteella.

Tuloksena oleva arvo on kuvan mukainen:

Yllä olevassa taulukossa meillä on viisi osiota, ja kunkin osion enimmäisarvo näkyy suurimmassa sarakkeessa.

Johtopäätös

Tässä opetusohjelmassa opit käyttämään SQL Server last_value() -funktiota järjestetyn joukon tai osion viimeisen arvon saamiseksi.