Galite naudoti funkcijas DFirst ir DLast , kad grąžintumėte atsitiktinį įrašą iš konkretaus lentelės arba užklausos lauko, kai jums tiesiog reikia bet kokios reikšmės iš to lauko. Naudokite funkcijas DFirst ir DLast formoje arba ataskaitoje makrokomanda, modulyje, užklausos reiškinyje arba apskaičiuojamasis valdiklis.
Sintaksė
DFirst ( reiškinys , domenas [, kriterijai] )
DLast ( reiškinys , domenas [, kriterijai] )
Funkcijos DFirst ir DLast turi šiuos argumentus:
Argumentas |
Aprašas |
reiškinys |
Būtinas. Reiškinys, identifikuojantis lauką, kurio pirmąją arba paskutinę reikšmę norite rasti. Tai gali būti eilutės išraiška, identifikuojantis lentelės ar užklausos lauką, arba reiškinys, kuris atlieka to lauko duomenų skaičiavimą. Expr galite įtraukti lauko pavadinimą į lentelę, 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į. |
kriterijai |
Pasirenkamas. Eilutės reiškinys, naudojamas apriboti duomenų diapazoną, kuriame atliekama funkcija DFirst arba DLast . Pvz., kriterijai dažnai yra sąlygos WHERE atitikmuo SQL reiškinyje, be žodžio WHERE. Jei kriterijai nenurodyti, funkcijos DFirst ir DLast įvertina expr pagal visą domeną. Bet kuris laukas, įtrauktas į kriterijus , taip pat turi būti domene; Kitu atveju funkcijos DFirst ir DLast grąžina Null. |
Pastabos
Pastaba: Jei norite grąžinti pirmą arba paskutinį įrašų rinkinio įrašą ( domenas ), turite sukurti užklausą, surūšiuotą kaip didėjimo arba mažėjimo tvarka, ir nustatyti ypatybę TopValues kaip 1. Daugiau informacijos žr. ypatybės TopValues temoje. "Visual Basic for Applications" (VBA) modulyje taip pat galite sukurti ADO įrašų rinkinio objektą ir naudoti metodą MoveFirst arba MoveLast , kad būtų pateiktas pirmas arba paskutinis įrašų rinkinio įrašas.
Pavyzdžiai
Reiškinys |
Rezultatai |
SELECT DFirst("DateofSale","ProductSales") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale","ProductSales"); |
Grąžina atsitiktinę reikšmę iš lentelės "ProductSales" lauko "DateofSale". Jei lentelėje yra pirminis raktas, ji pateiks dateofSale reikšmę FIRST pagal pirminio rakto didėjimo tvarką. |
SELECT DLast("DateofSale","ProductSales") AS FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale","ProductSales"); |
Grąžina atsitiktinę reikšmę iš lentelės "ProductSales" lauko "DateofSale". Jei lentelėje yra pirminis raktas, ji pateiks dateofSale reikšmę LAST pagal pirminio rakto didėjimo tvarką. grąžina Lentelės "ProductSales" pirmąjį "Produkto ID", kur "Discount" reikšmė yra "0" ir rodo rezultatą stulpelyje "FirstDis_ID". |
SELECT DLast("ProductID","ProductSales","Discount=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("ProductID","ProductSales","Discount=0"); |
Grąžina paskutinį produkto ID iš lentelės "ProductSales", kur "Discount" reikšmė yra "0" ir rodo rezultatą stulpelyje "LastDis_ID". |