DMin, DMax funkcijos

Taikoma
„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Galite naudoti funkcijas DMin ir DMax nurodytam įrašų rinkiniui (domenui) nustatyti mažiausias ir didžiausias reikšmes. Funkcijas DMin ir DMax naudokite "Visual Basic for Applications " (VBA) modulyje, makrokomandoje, užklausos reiškinyje arba skaičiavimų valdiklyje.

Pavyzdžiui, galite naudoti funkcijas DMin ir DMax ataskaitos skaičiavimų valdikliuose, norėdami parodyti mažiausias ir didžiausias konkretaus kliento užsakymų sumas. Arba funkciją DMin galite naudoti užklausos reiškinyje, kad būtų rodomi visi užsakymai, kuriems nuolaida yra didesnė už mažiausią galimą nuolaidą.

Sintaksė

DMin(išraiška, domenas [, kriterijai] )

DMax(išraiška, domenas [, kriterijai] )

Funkcijos DMin ir DMax turi tokius argumentus:

Argumentas Aprašymas
expr Būtinas. Reiškinys, identifikuojantis lauką, kurio mažiausią arba maksimalią reikšmę norite rasti. Tai gali būti eilutės reiškinys, identifikuojantis lauką lentelėje ar užklausoje, arba reiškinys, atliekantis duomenų skaičiavimus tame lauke. Išraiškoje galite įtraukti lentelės lauko pavadinimą, formos valdiklį, konstantą arba funkciją. Reiškinyje esanti funkcija gali būti įtaisytoji arba apibrėžta vartotojo, tačiau negali būti kito domeno agregavimo ar SQL agregavimo funkcija.
domenas Būtinas. Eilutės reiškinys, identifikuojantis domeną sudarančių įrašų rinkinį. Tai gali būti lentelės pavadinimas arba užklausos, kuriai nebūtinas parametras, pavadinimas.
kriterijai Pasirinktinis. Eilutės reiškinys, naudojamas apriboti duomenų diapazoną, kuriame atliekama funkcija DMin arba DMax . Pavyzdžiui, kriterijai dažnai yra sąlygos WHERE atitikmuo SQL užklausoje, be žodžio WHERE. Jei kriterijai nenurodyti, funkcijos DMin ir DMax įvertina reiškinį pagal visą domeną. Bet koks kriterijus įtrauktas laukas taip pat turi būti domeno laukas, priešingu atveju funkcijos DMin ir DMax grąžina Neapibrėžtą reikšmę (Null).

Pastabos

Funkcijos DMin ir DMax pateikia mažiausias ir didžiausias reikšmes, kurios atitinka kriterijus. Jei išraiška identifikuoja skaitinius duomenis, funkcijos DMin ir DMax grąžina skaitines reikšmes. Jei išraiška identifikuoja eilutės duomenis, ji grąžina eilutę, kuri pagal abėcėlę yra pirma arba paskutinė.

Funkcijos DMin ir DMax nepaiso nulinių reikšmių lauke, kurį nurodo reiškinys. Tačiau, jei joks įrašas neatitinka kriterijų arba domene nėra įrašų, funkcijos DMin ir DMax grąžina Null.

Nesvarbu, ar funkciją DMin ar DMax naudojate makrokomandoje ar modulyje, užklausos reiškinyje ar skaičiavimų valdiklyje, kriterijų argumentą turėtumėte sudaryti atidžiai, siekdami užtikrinti, kad jis bus įvertintas teisingai.

Funkcijas DMin ir DMax galite naudoti norėdami nurodyti kriterijus užklausos eilutėje Kriterijai, užklausos apskaičiavimo lauko reiškinyje arba naujinimo užklausos eilutėje Naujinti į.

Pastaba

Bendrosios sumos užklausos apskaičiuotojo lauko reiškinyje galite naudoti funkcijas DMin ir DMax arba funkcijas Min ir Max . Jei naudojate funkciją DMin arba DMax , reikšmės įvertinamos prieš grupuojant duomenis. Jei naudojate funkciją Min arba Max , duomenys sugrupuojami iki reikšmių, esančių lauko reiškinyje, įvertinimo.

Funkciją DMin arba DMax naudokite skaičiavimų valdiklyje, kai norite nurodyti kriterijus, ribojančius duomenų diapazoną, su kuriuo atliekama funkcija. Pavyzdžiui, norėdami matyti didžiausią gabenimo mokesčio už užsakymą, pristatytą į Kaliforniją, skaičių, nustatykite teksto lauko ypatybę ControlSource į šį reiškinį:

=DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Jei tiesiog norite rasti mažiausią arba maksimalią visų domeno įrašų reikšmę, naudokite funkciją Min arba Max .

Funkciją DMin arba DMax galite naudoti modulyje, makrokomandoje arba formos skaičiavimų valdiklyje, jei reikalingo rodyti lauko nėra įrašo šaltinyje, kuriuo pagrįsta jūsų forma.

patarimas

Nors galite naudoti funkciją DMin arba DMax, norėdami rasti mažiausią arba maksimalią lauko reikšmę išorinėje lentelėje, būtų efektyviau sukurti užklausą su reikalingais laukais iš abiejų lentelių ir savo formoje ar ataskaitoje naudoti šią užklausą.

Pastaba

Naudojant šias funkcijas, neįrašyti domeno įrašų pakeitimai neįtraukiami. Jei norite, kad funkcijos DMax arba DMin rezultatai būtų pagrįsti pakeistomis reikšmėmis, pirmiausia pakeitimus turite įrašyti skirtuko Duomenys dalyje Įrašai spustelėdami Įrašyti įrašą, pereidami į kitą įrašą, ar naudodami metodą Naujinimas.

Pavyzdys

Pastaba

Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.

Toliau pateiktame pavyzdyje pateikiamos užsakymų, pristatytų į Jungtinę Karalystę, mažiausios ir didžiausios lauko Krovinys reikšmės. Domenas yra lentelė Užsakymai. Kriterijų argumentas apriboja gaunamą įrašų rinkinį iki tų, kurių ShipCountryRegion reikšmė yra JK.


Dim curX As Currency
Dim curY As Currency
curX = DMin("[Freight]", "Orders", _
    "[ShipCountryRegion] = 'UK'")
curY = DMax("[Freight]", "Orders", _
    "[ShipCountryRegion] = 'UK'")

Kitame pavyzdyje kriterijų argumentas apima dabartinę teksto laukelio, pavadinto Užsakymo_data, reikšmę. Teksto laukas susietas su lentelės Orders lauku OrderDate. Atkreipkite dėmesį, kad nuoroda į valdiklį rašoma be dvigubų kabučių ("), žyminčių eilutes. Tai užtikrina, kad kiekvieną kartą iškvietus funkciją DMax , "Access" gaus iš valdiklio esamą reikšmę.


Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
    & Forms!Orders!OrderDate & "#")

Kitame pavyzdyje kriterijų išraiška apima kintamąjį, dteOrderDate. Atkreipkite dėmesį, kad skaičių ženklai (#) yra įtraukiami į eilutės reiškinį, todėl sujungus eilutes, jie apims datą.


Dim dteOrderDate As Date
Dim curX As Currency
dteOrderDate = #03/30/2000#
curX = DMin("[Freight]", "Orders", _
    "[OrderDate] = #" & dteOrderDate & "#")