Példakifejezések

Hatókör
Microsoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

Ebben a cikkben példákat talál az Accessben használható kifejezésekre. A kifejezések egyetlen értékben egyesítik a matematikai vagy logikai operátorokat, állandókat, függvényeket, táblamezőket, vezérlőelemeket és tulajdonságokat. Az Accessben kifejezéseket használva értékeket számíthat ki, adatokat érvényesíthet, és beállíthatja az alapértelmezett értékeket.

Tartalom

Űrlapok és jelentések

Az összes űrlap- és jelentéskifejezés

Szöveges műveletek; más vezérlőelemekben található értékek;Dátumműveletek Élőfejek és élőlábak; Értékek megszámlálása, összegzése és átlaga; Csak két érték feltételei Számtani műveletek; összesítő SQL-függvények

Lekérdezések és szűrők

Az összes lekérdezési és szűrőkifejezés

Szöveges műveletek; összesítő SQL-függvények; Szöveges értékek egyeztetése; Rekordminták egyeztetése a Like operátorral; Frissítő lekérdezések Számtani műveletek; Hiányzó adatok megkeresése; Dátumfeltételek egyeztetése; Sorok egyeztetése SQL-összesítésekkel; SQL-utasítások Dátumműveletek; számított mezők segédlekérdezésekkel; Hiányzó adatokat tartalmazó mezők; Mezők egyeztetése segédlekérdezésekkel

Táblázatok

Az összes táblakifejezés

Alapértelmezett mezőértékek Mezőérvényesítési szabályok

Makrók

Az összes makrókifejezés

Űrlapok és jelentések

Az ebben a szakaszban található táblázatokban olyan kifejezések láthatók, amelyek egy űrlap vagy jelentés vezérlőelemeinek értékét számítják ki. Ha számított vezérlőelemet szeretne létrehozni, a kifejezést a ControlSource vezérlő tulajdonságában adja meg, ne pedig egy táblamezőben vagy lekérdezésben.

Megjegyzés

Akkor is használhat kifejezéseket egy űrlapon vagy jelentésben, amikor feltételes formázással emel ki adatokat.

Szöveges műveletek

A következő táblázatban szereplő kifejezések az & (és) és a + (plusz) operátort használják szöveges karakterláncok egyesítéséhez, beépített függvényekkel végzett szöveges munkához, illetve más számított vezérlőelemeket hoznak létre.

Kifejezés Eredmény
="N/A" A Hiányzik eredményt adja.
=[FirstName] & " " & [LastName] A tábla Vezetéknév és Utónév mezőinek értékeit jeleníti meg. Ebben a példában az & operátor a Vezetéknév mező, az idézőjelek között lévő szóköz karakter és az Utónév mező egyesítésére szolgál.
=Left([ProductName], 1) A Left függvény segítségével megjeleníti az érték első karakterét egy .ProductName
=Right([AssetCode], 2) A függvény segítségével Right megjeleníti egy mező vagy vezérlőelem AssetCodeértékének utolsó két karakterét.
=Trim([Address]) A Trim függvény segítségével megjeleníti a Address vezérlőelem értékét a kezdő és záró szóközök eltávolítása után.
=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode]) A IIf függvény segítségével megjeleníti az és PostalCode vezérlőelemek értékétCity, ha a vezérlőelem értéke Region null. Ellenkező esetben szóközökkel elválasztva megjeleníti a City, és RegionPostalCode a vezérlőelemek értékeit.
=[City] & (" " + [Region]) & " " & [PostalCode] Az operátor és a + nullterjesztés segítségével megjeleníti az és PostalCode vezérlőelemek értékétCity, ha a mező vagy a vezérlőelem értéke Region null. Ellenkező esetben szóközökkel elválasztva megjeleníti a City, és RegionPostalCode és a mezők vagy vezérlőelemek értékeit. A nullterjesztés azt jelenti, hogy ha a kifejezés bármely része null, akkor a teljes kifejezés is null lesz. Az + operátor támogatja a nullterjesztést, de az & operátor nem.

Vissza a tetejére

Élőfejek és élőlábak

Az és Pages tulajdonságokkal Page megjelenítheti vagy kinyomtathatja az oldalszámokat az űrlapokon vagy a jelentésekben. Ezek a tulajdonságok csak nyomtatáskor vagy a nyomtatási képen láthatók, ezért nem jelennek meg az űrlap vagy jelentés tulajdonságlapján. Általában elhelyez egy beviteli mezőt az űrlap vagy jelentés fejléc- vagy láblécszakaszában, majd az alábbi táblázatban láthatóhoz hasonló kifejezést használ.

Az űrlapokon és jelentésekben használható fejlécekről és láblécekről további információt az Oldalszámok beszúrása jelentésbe vagy űrlapra című cikkben talál.

Kifejezés Eredmény
=[Page] 1
="Page " & [Page] 1. oldal
="Page " & [Page] & " of " & [Pages] 3/1. oldal
=[Page] & " of " & [Pages] & " Pages" 1/3. oldal
=[Page] & "/" & [Pages] & " Pages" 1. oldal, összesen: 3
=[Country/region] & " - " & [Page] UK – 1
=Format([Page], "000") 001
="Printed on: " & Date() Nyomtatás ideje: 17.12.31.

Vissza a tetejére

Aritmetikai műveletek

A kifejezéseket két vagy több mező vagy vezérlőelem értékeinek összeadásához, kivonásához, szorzásához és osztásához is használhatja. A kifejezésekkel emellett dátumokon is végrehajthat számtani műveleteket. Tegyük fel például, hogy létrehozott egy IgényeltDátum nevű, Dátum/Idő típusú táblamezőt. A mezőben (vagy a mezőhöz kötött vezérlőelemben) a kifejezés =[RequiredDate] - 2 egy olyan dátum/idő értéket ad vissza, amely két nappal korábbi az IgényeltDátum mező aktuális értékénél.

Kifejezés Eredmény
=[Subtotal]+[Freight] A Részösszeg és a Fuvardíj mező vagy vezérlőelem értékeinek összege.
=[RequiredDate]-[ShippedDate] Az IgényeltDátum és a SzállításiDátum mező vagy vezérlőelem dátumértékei közötti időkülönbség.
=[Price]*1.06 Az Ár mező vagy vezérlőelem értéke szorozva 1,06-tal (az Ár mező értéke megnövelve 6%-kal).
=[Quantity]*[Price] A Mennyiség és az Ár mező vagy vezérlőelem értékeinek szorzata.
=[EmployeeTotal]/[CountryRegionTotal] Az ÖsszesAlkalmazott és az ÖsszesOrszágRégió mező vagy vezérlőelem értékeinek hányadosa.

Megjegyzés

Ha egy kifejezésben aritmetikai operátort (+, -, *vagy /) használ, és az egyik vezérlőelem értéke null, a teljes kifejezés eredménye null lesz. Ezt nevezik nullterjesztésnek. Ha egy vezérlőelem null értékkel rendelkezik, a nullterjesztés elkerülhető, ha az Nz függvény használatával nullává alakítja azt. Használja például a =Nz([Subtotal])+Nz([Freight]).

Vissza a tetejére

Más vezérlőelemekben szereplő értékek

Előfordulhat, hogy a munka során olyan értékre van szüksége, amely máshol, például egy másik űrlap vagy jelentés egyik mezőjében szerepel. Ebben az esetben kifejezés használatával adhatja vissza a kívánt értéket.

Az alábbi táblázatban olyan kifejezésekre talál példákat, amelyeket űrlapok számított vezérlőelemeiben használhat.

Kifejezés Eredmény
=Forms![Orders]![OrderID] A Rendelések űrlap Rendelésazonosító vezérlőelemének az értéke.
=Forms![Orders]![Orders Subform].Form![OrderSubtotal] A Rendelések űrlap Rendelések segédűrlap nevű segédűrlapján található RendelésRészösszege elnevezésű vezérlőelem értéke.
=Forms![Orders]![Orders Subform]![ProductID].Column(2) A Rendelések űrlap Rendelések segédűrlap nevű segédűrlapján található többoszlopos lista, a Termékkód harmadik oszlopának értéke. (Ne feledje, hogy az oszlopok számozása a következőképpen alakul: 0, 1, 2 stb.)
=Forms![Orders]![Orders Subform]![Price] * 1.06 A Rendelések űrlap Rendelések segédűrlap nevű segédűrlapján található Ár vezérlőelem értéke megszorozva 1,06-tal (az Ár vezérlőelem értéke megnövelve 6%-kal).
=Parent![OrderID] Az aktuális segédűrlap szülőűrlapján található Rendelésazonosító vezérlőelem értéke.

Az alábbi táblázatban szereplő kifejezések a számított vezérlőelemek jelentésekben történő használatának módjait ismertetik. A kifejezések a Report tulajdonságra hivatkoznak.

Kifejezés Eredmény
=Report![Invoice]![OrderID] A „Számla” elnevezésű jelentés „Rendelésazonosító” nevű vezérlőelemének értéke.
=Report![Summary]![Summary Subreport]![SalesTotal] Az Összesítés elnevezésű jelentés Összesítés segédjelentés nevű segédjelentésében található ÖsszEladás vezérlőelem értéke.
=Parent![OrderID] Az aktuális segédjelentés szülőjelentésében található Rendelésazonosító vezérlőelem értéke.

Vissza a tetejére

Értékek megszámlálása, összegzése és átlagának kiszámítása

Egy vagy több mező vagy vezérlőelem értékének kiszámításához célszerű az összesítő függvénytípust használni. Kiszámíthatja például a csoportösszeget egy jelentés csoportláblécében, vagy egy rendelés részösszegét egy űrlap sortételei alapján. Emellett megszámolhatja az egy vagy több mezőben található tételeket, illetve kiszámíthatja átlagértéküket.

Az alábbi táblázatban található kifejezések azt mutatják be, hogy hogyan használható például az Avg, a Count és a Sum függvény.

Kifejezés Leírás
=Avg([Freight]) Az Avg függvény segítségével kiszámítja a Fuvardíj nevű táblamezőben vagy vezérlőelemben szereplő értékek átlagát.
=Count([OrderID]) A Count függvény segítségével megadja a Rendelésazonosító vezérlőelem rekordjainak számát.
=Sum([Sales]) A Sum függvény segítségével kiszámítja az Értékesítés vezérlőelem értékeinek összegét.
=Sum([Quantity]*[Price]) A Sum függvény segítségével kiszámítja a Mennyiség és az Ár vezérlőelemben szereplő értékek szorzatának összegét.
=[Sales]/Sum([Sales])*100 Az értékesítés százalékos arányát jeleníti meg a vezérlőelem értékének Sales a vezérlőelemben lévő összes érték Sales összegével való elosztásával. Ha Format a vezérlőelem Percenttulajdonságát , ne szerepeljen *100 a kifejezésben.

Az összesítő függvényekről, valamint a mezők és oszlopok értékeinek összesítéséről további információt Az adatok összegzése lekérdezés használatával, az Adatok megszámlálása lekérdezéssel, az Oszlopösszesítők megjelenítése adatlapon Összeg sorral és az Oszlopösszesítők megjelenítése adatlapon című cikkben talál.

Vissza a tetejére

SQL-összesítési függvények

Az SQL-összesítési vagy területi összegző függvények használata akkor javasolt, ha szelektív módon szeretné összegezni vagy megszámlálni az értékeket. Egy „terület” egy vagy több tábla egy vagy több mezőjéből, illetve egy vagy több űrlap vagy jelentés egy vagy több vezérlőeleméből tevődik össze. Egy táblamező értékeit például megfeleltetheti egy űrlap vezérlőelemének értékeivel.

Kifejezés Leírás
=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms("Suppliers")("[SupplierID]")) A DLookup függvénnyel visszaadja a Szállítók tábla KapcsolattartóNeve mezőjének értékét, ahol a tábla Szállítóazonosító mezőjének értéke megegyezik a Szállítók űrlap Szállítóazonosító vezérlőelemének értékével.
=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms![New Suppliers]![SupplierID]) A DLookup függvénnyel visszaadja a Szállítók tábla KapcsolattartóNeve mezőjének értékét, ahol a tábla Szállítóazonosító mezőjének értéke megegyezik az Új szállítók űrlap Szállítóazonosító vezérlőelemének értékével.
=DSum("[OrderAmount]", "[Orders]", "[CustomerID] = 'RATTC'") A DSum függvény segítségével visszaadja a Rendelések tábla RendeltMennyiség mezőjének összesített értékét, ahol az Ügyfélazonosító értéke RATTC.
=DCount("[Retired]","[Assets]","[Retired]=Yes") A DCount függvény segítségével visszaadja az Eszközök táblában található Kivezetve mező (Igen/Nem típusú mező) Igen értékeinek számát.

Vissza a tetejére

Dátumműveletek

A dátumok és időpontok követése az adatbázisok alapvető műveletei közé tartozik. Kiszámítható például a számlakibocsátás időpontja óta eltelt napok száma, és elvégezhető a kinnlevőség korosítása. A következő táblázat a dátumok és időpontok különféle formázási lehetőségeit mutatja be.

Kifejezés Leírás
=Date() A Date függvény segítségével megjeleníti az aktuális dátumot a következő mm-dd-yyformátumban: ahol mm a hónap (1-től 12-ig), dd a nap (1-től 31-ig), yy illetve az év utolsó két számjegye (1980-tól 2099-ig) található.
=Format(Now(), "ww") A Format függvény segítségével megjeleníti az aktuális dátum éven belüli hétszámát, amely ww az 1-től 53-ig terjedő heteket jelöli.
=DatePart("yyyy", [OrderDate]) A DatePart függvény segítségével megjeleníti a RendelésDátuma vezérlőelem értékének négyjegyű évszámát.
=DateAdd("y", -10, [PromisedDate]) A DateAdd függvény segítségével megjeleníti az ÍgértDátum vezérlőelem értékénél 10 nappal korábbi dátumot.
=DateDiff("d", [OrderDate], [ShippedDate]) A DateDiff függvény segítségével megjeleníti a RendelésDátuma és a SzállításiDátum vezérlőelemek értékei közti napokban mért különbséget.
=[InvoiceDate] + 30 Dátumokon elvégzett számtani műveletekkel kiszámítja a SzámlakibocsátásDátuma mező vagy vezérlőelem dátumához mért 30 nappal későbbi dátumot.

Vissza a tetejére

Csak két érték feltételei

Az alábbi táblázatban szereplő példákban az IIf függvényt használtuk két lehetséges érték egyikének visszaadására. Az IIf függvénynek három argumentumot kell átadni: Az első argumentum egy kifejezés, amelynek a True vagy False értéket kell eredményül adnia. A második argumentum a visszaadandó érték, ha a kifejezés eredménye igaz, a harmadik pedig a visszaadandó érték, ha a kifejezés eredménye hamis.

Kifejezés Leírás
=IIf([Confirmed] = "Yes", "Order Confirmed", "Order Not Confirmed") Az IIf (Immediate If) függvény segítségével a "Rendelés visszaigazolva" üzenetet jeleníti meg, ha a Visszaigazolva vezérlőelem Yesértéke; ellenkező esetben az üzenetet jeleníti meg. "Order Not Confirmed."
=IIf(IsNull([Country/region]), " ", [Country]) Az IIf és az IsNull függvény segítségével üres karakterláncot jelenít meg, ha az OrszágRégió vezérlőelem értéke null; ellenkező esetben az OrszágRégió vezérlőelem értékét adja eredményül.
=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode]) Az IIf és az IsNull függvény segítségével megjeleníti a Település és az Irányítószám vezérlőelem értékét, ha a Megye vezérlőelem értéke null. Ellenkező esetben a Település, a Megye és az Irányítószám mező vagy vezérlőelem értékét adja eredményül.
=IIf(IsNull([RequiredDate]) Or IsNull([ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate]) Az IIf és az IsNull függvény segítségével a „Hiányzó dátum keresése” üzenetet jeleníti meg, ha az IgényeltDátum vezérlőelem értékéből a SzállításiDátum értékét kivonva a null eredményt kapja. Ellenkező esetben a két vezérlőelem értéke közti különbséget adja eredményül.

Vissza a tetejére

Lekérdezések és szűrők

Ebben a szakaszban olyan kifejezésekre talál példákat, amelyekkel számított mezőket hozhat létre lekérdezésekben, illetve megadhatja a lekérdezés feltételeit. A számított mezők a lekérdezés olyan oszlopai, amelyek egy kifejezés eredményeképpen jöttek létre. Kiszámíthat például egy adott értéket, szöveges értékeket fűzhet össze (például egy vezeték- és egy utónevet), vagy formázhatja a dátumok részeit.

A lekérdezésekben feltételek megadásával korlátozhatja a használt rekordok számát. Az Between operátorral megadhat például egy kezdő és egy záró dátumot, és azokra a rendelésekre korlátozhatja a lekérdezés eredményeit, amelyeket a szállítási dátumok közé zártak.

Az alábbi szakaszokban a lekérdezésekben használható kifejezésekre talál példákat.

Szöveges műveletek lekérdezésekben

A következő táblázatban szereplő kifejezések az & és + operátorokat használják szöveges karakterláncok egyesítéséhez, beépített függvényeket a szöveges karakterláncok kezeléséhez, illetve a szövegen végrehajtott egyéb műveleteket számított mezők létrehozásához.

Kifejezés Leírás
FullName: [FirstName] & " " & [LastName] Létrehozza a TeljesNév mezőt, amelyben megjelennek a Vezetéknév és az Utónév mezők szóközzel elválasztott értékei.
Address2: [City] & " " & [Region] & " " & [PostalCode] Létrehozza a Cím2 mezőt, amelyben megjelennek a Település, a Megye és az Irányítószám mező szóközzel elválasztott értékei.
ProductInitial: Left([ProductName], 1) Létrehozza a TerméknévRöviden mezőt, majd a Left függvénnyel megjeleníti benne a Terméknév mező értékének első karakterét.
TypeCode: Right([AssetCode], 2) Létrehozza a Típuskód mezőt, majd a Right függvénnyel megjeleníti benne az Eszközkód mező értékének utolsó két karakterét.
AreaCode: Mid([Phone],2,3) Létrehozza a Körzetszám mezőt, majd a Mid függvénnyel megjeleníti benne a Telefonszám mező három karakterét a második karaktertől kezdve.
ExtendedPrice: CCur([Order Details].[Unit Price]*[Quantity]*(1-[Discount])/100)*100 A számított mezőnek a TeljesÁr nevet adja, és a Ccur függvény segítségével kiszámítja egy adott tétel kedvezménnyel csökkentett végösszegét.

Vissza a tetejére

Aritmetikai műveletek lekérdezésekben

A kifejezéseket két vagy több mező vagy vezérlőelem értékeinek összeadásához, kivonásához, szorzásához és osztásához is használhatja. Emellett dátumokon is végrehajthat számtani műveleteket. Tegyük fel például, hogy létrehozott egy IgényeltDátum nevű, Dátum/idő típusú mezőt. A kifejezés =[RequiredDate] - 2 a mezőben szereplő dátumnál két nappal korábbi Dátum/idő értéket fog eredményül adni.

Kifejezés Leírás
PrimeFreight: [Freight] * 1.1 Létrehozza az ElsődlegesFuvardíj elnevezésű mezőt, majd megjeleníti benne a 10%-kal növelt fuvardíjat.
OrderAmount: [Quantity] * [UnitPrice] Létrehozza a RendeltMennyiség nevű mezőt, majd megjeleníti benne a Mennyiség és az Egységár mezők értékeinek szorzatát.
LeadTime: [RequiredDate] - [ShippedDate] Létrehozza az ÁtfutásiIdő nevű mezőt, majd megjeleníti benne az IgényeltDátum és a SzállításiDátum mezők értékei közti különbséget.
TotalStock: [UnitsInStock]+[UnitsOnOrder] Létrehozza a TeljesKészlet nevű mezőt, majd megjeleníti benne a Raktáron és a SzállításraVár mezők értékeinek összegét.
FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100 Létrehozza a ") nevű FreightPercentagemezőt, majd százalékban kifejezve megjeleníti az egyes részösszegekre eső fuvardíjat. A kifejezés a Sum függvény segítségével összegzi a Freight mezőben lévő értékeket, majd elosztja az összegeket a mezőben lévő Subtotal értékek összegével. A kifejezés használatához a választó lekérdezést összegző lekérdezéssé kell alakítania. A tervezőrács Összeg sorát kell használnia, és a mező Összeg cellájának értékét a következőre Expressionkell állítania: . Az összegző lekérdezések létrehozásáról bővebben az Adatok összegzése lekérdezés használatával című témakörben olvashat. Ha a Format mező Percenttulajdonságát , ne foglalja bele a *100.

Az összesítő függvényekről, valamint a mezők és oszlopok értékeinek összesítéséről további információt Az adatok összegzése lekérdezés használatával, az Adatok megszámlálása lekérdezéssel, az Oszlopösszesítők megjelenítése adatlapon Összeg sorral és az Oszlopösszesítők megjelenítése adatlapon című cikkben talál.

Vissza a tetejére

Dátumműveletek lekérdezésekben

Csaknem minden adatbázis tárolja és nyomon követi a dátumokat és időpontokat. Ha dátumokkal és időpontokkal kapcsolatos műveleteket szeretne végrehajtani az Accessben, állítsa a tábla dátum és idő mezőit Dátum/idő adattípusra. Az Accessben dátumokkal is végezhetők számtani műveletek. Kiszámítható például a számlakibocsátás időpontja óta eltelt napok száma, és elvégezhető a kinnlevőség korosítása.

Kifejezés Leírás
LagTime: DateDiff("d", [OrderDate], [ShippedDate]) Létrehozza az IdőbeliEltérés nevű mezőt, majd a DateDiff függvény segítségével megjeleníti a rendelési és a szállítási dátum közti napok számát.
YearHired: DatePart("yyyy",[HireDate]) Létrehozza az AlkalmazásÉve nevű mezőt, majd a DatePart függvény segítségével megjeleníti, hogy az egyes alkalmazottak melyik évben lettek felvéve.
MinusThirty: Date( )- 30 Létrehozza a MínuszHarminc nevű mezőt, majd a Date függvény segítségével megjeleníti az aktuális dátumot 30 nappal megelőző dátumot.

Vissza a tetejére

SQL-összesítő függvények lekérdezésekben

A következő táblázatban szereplő kifejezések adatok összesítésére és összegzésére szolgáló SQL-függvényeket használnak. Gyakran találkozhat olyan függvényekkel, mint például az Sum, és CountAvg aggregátumfüggvényekként is utalunk rájuk.

Az összesítő függvények mellett az Accessben tartományösszesítő függvények is találhatók, amelyekkel szelektív módon összegezheti vagy számlálhatja meg az értékeket. Ezek használata akkor javasolt, ha csak az egy adott tartományban található értékeket szeretné megszámolni, vagy egy másik táblában szereplő értéket keres. A területi összesítő függvények közé tartozik például a DSum, a DCount és a DAvg.

Az összegek kiszámításához gyakran létre kell hozni egy összegző lekérdezést. Ha például csoportonként szeretne összesíteni adatokat, használjon összegző lekérdezést. Ha a lekérdezéstervező rácsról szeretne engedélyezni egy összegző lekérdezést, válassza a Nézet menü Összegek elemét.

Kifejezés Leírás
RowCount: Count(*) Létrehozza a SorokSzáma nevű mezőt, majd a Count függvény segítségével megszámlálja a lekérdezésben szereplő rekordokat, beleértve a null értékű (üres) mezőket tartalmazó rekordokat is.
FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100 Létrehozza a ") nevű FreightPercentagemezőt, majd kiszámítja az egyes részösszegekre eső fuvardíj százalékos arányát a mezőben lévő Freight értékek összegének és a mezőben lévő Subtotal értékek összegének elosztásával. Ez a példa a függvényt Sum használja. Összegző lekérdezés esetében ezt a kifejezést kell használni. Ha a Format mező Percenttulajdonságát , ne foglalja bele a *100. Az összegző lekérdezések létrehozásáról bővebben az Adatok összegzése lekérdezés használatával című témakörben olvashat.
AverageFreight: DAvg("[Freight]", "[Orders]") Létrehozza az ÁtlagosFuvardíj mezőt, majd az összegző lekérdezésben egyesített megrendelések alapján a DAvg függvénnyel kiszámolja az átlagos fuvardíjat.

Vissza a tetejére

Mezők hiányzó adatokkal

Az alábbi kifejezések használatát olyan mezők esetében javasoljuk, amelyekből hiányoznak bizonyos adatok. Ilyen mezők például a null értékű, vagyis ismeretlen vagy meghatározatlan értéket tartalmazó mezők. Munka közben gyakran találkozhatunk null értékekkel, például ha egy új terméknek még nincs ára, vagy ha egy munkatársunk elmulasztott egy bizonyos értéket hozzáadni egy megrendeléshez. Az adatbázisokban végzett műveletek esetében létfontosságú a null értékek megkeresésének és feldolgozásának képessége. Az alábbi táblázat a null értékek kezelésének leggyakoribb módjait ismerteti.

Kifejezés Leírás
CurrentCountryRegion: IIf(IsNull([CountryRegion]), " ", [CountryRegion]) Létrehozza az AktuálisOrszágRégió nevű mezőt, majd az IIf és az IsNull függvény segítségével megjelenít benne egy üres karakterláncot, ha az OrszágRégió mező null értéket tartalmaz; ellenkező esetben az OrszágRégió mező tartalmát adja eredményül.
LeadTime: IIf(IsNull([RequiredDate] - [ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate]) Létrehozza az ÁtfutásiIdő mezőt, majd az IIf és az IsNull függvény segítségével a „Hiányzó dátum keresése” üzenetet jeleníti meg, ha az IgényeltDátum vagy a SzállításiDátum mező értéke null; ellenkező esetben a dátumok közti különbséget adja eredményül.
SixMonthSales: Nz([Qtr1Sales]) + Nz([Qtr2Sales]) Létrehozza a FélévesEladás nevű mezőt, az Nz függvénnyel minden null értéket nulla értékké alakít, majd megjeleníti az 1.negyedév és a 2.negyedév mező értékeinek összegét.

Vissza a tetejére

Segédlekérdezéseket tartalmazó számított mezők

Egy beágyazott lekérdezés, más néven segédlekérdezés használatával létrehozhat egy számított mezőt. Az alábbi táblázatban szereplő kifejezés jó példa arra, hogy hogyan lehet segédlekérdezéssel számított mezőt létrehozni.

Kifejezés Leírás
Cat: (SELECT [CategoryName] FROM [Categories] WHERE [Products].[CategoryID]=[Categories].[CategoryID]) Létrehozza a Kat. nevű mezőt, majd megjeleníti a Kategórianév adatot, ha a Kategóriák tábla Kategóriaazonosító értéke megegyezik a Termékek tábla Kategóriaazonosító értékével.

Vissza a tetejére

Szöveges értékek egyeztetése

Az alábbi táblázat példakifejezései olyan feltételeket mutatnak be, amelyek teljes vagy részleges szövegérték-egyezést adnak eredményül.

Mező Kifejezés Leírás
SzállításiVáros "London" A Budapestre szállított szállítmányokat jeleníti meg.
SzállításiVáros "London" Or "Hedge End" Az operátor segítségével Or megjeleníti a Londonba vagy Hedge Endre szállított szállítmányok listáját.
SzállításiOrszágRégió In("Canada", "UK") Az operátor segítségével In megjeleníti a Kanadába vagy az Egyesült Királyságba szállított szállítmányok listáját.
SzállításiOrszágRégió Not "USA" Az Not operátor segítségével megjeleníti az Egyesült Államokon kívüli országokba/régiókba szállított szállítmányok számát.
Terméknév Not Like "C*" Az operátor és a * helyettesítő karakter segítségével Not megjeleníti a nem C betűvel kezdődő termékek listáját.
Cégnév >="N" Megjeleníti azokat a szállítmányokat, amelyek olyan cégeknek szállítottak, amelyek neve betűvel NZkezdődik.
Termékkód Right([ProductCode], 2)="99" A Right függvény segítségével megjeleníti azokat a szállítmányokat, amelyeknél a Termékkód mező értéke 99.
SzállításiNév Like "S*" A következő betűvel Skezdődő ügyfelek számára kiszállított szállítmányokat jeleníti meg.

Vissza a tetejére

Dátumfeltételek egyeztetése

Az alábbi táblázatban szereplő kifejezések azt mutatják be, hogy miként használhatók dátumok és hasonló függvények a feltételkifejezésekben. A dátumértékek megadásáról és használatáról további információt a Dátum- és időmezők formázása című cikkben talál.

Mező Kifejezés Leírás
SzállításDátuma #2/2/2017# Megjeleníti a 2017. február 2-án kiszállított szállítmányokat.
SzállításDátuma Date() Az aznapi szállítmányokat adja eredményül.
IgényeltDátum Between Date( ) And DateAdd("m", 3, Date( )) Az Between...And operátor, valamint a DateAdd és a Date függvény segítségével megjeleníti az aktuális dátumtól számítva három hónapon belül esedékes megrendeléseket.
RendelésDátuma < Date( ) - 30 A Date függvény segítségével megjeleníti a 30 napnál régebbi megrendeléseket.
RendelésDátuma Year([OrderDate])=2017 A Year függvény segítségével megjeleníti a 2017-es megrendeléseket.
RendelésDátuma DatePart("q", [OrderDate])=4 A DatePart függvény segítségével megjeleníti a negyedik naptári negyedévre eső megrendeléseket.
RendelésDátuma DateSerial(Year ([OrderDate]), Month([OrderDate])+1, 1)-1 A DateSerial, a Year és a Month függvény segítségével megjeleníti az egyes hónapok utolsó napjára eső megrendeléseket.
RendelésDátuma Year([OrderDate])= Year(Now()) And Month([OrderDate])= Month(Now()) A Year és a Month függvény, valamint az And operátor segítségével megjeleníti az aktuális év aktuális hónapjában esedékes megrendeléseket.
SzállításDátuma Between #1/5/2017# And #1/10/2017# Az operátor segítségével Between...Andmegjeleníti a 2017. január 5-e és 2017. január 10-e után nem kiszállított szállítmányokat.
IgényeltDátum Between Date( ) And DateAdd("M", 3, Date( )) Az operátor segítségével Between...And megjeleníti az aktuális dátumtól számítva három hónapon belül esedékes megrendeléseket.
SzületésiDátum Month([BirthDate])=Month(Date()) A Month és a Date függvény segítségével megjeleníti azokat az alkalmazottakat, akik az adott hónapban ünneplik a születésnapjukat.

Vissza a tetejére

Hiányzó adatok megkeresése

A következő táblázatban ismertetett kifejezések olyan mezők kezelésére használhatók, amelyekből valószínűleg hiányzik valamely adat, azaz amelyek feltételezhetően null értéket vagy nulla hosszúságú karakterláncot tartalmaznak. A null érték hiányzó információt jelent, nem pedig egy nulla vagy bármilyen más értéket. Az Access az adatbázisok egységessége érdekében vezette be a hiányzó adatok jelzését. A valós adatbázisokban gyakran előfordul, hogy valamely adat, ha átmenetileg is, de hiányzik (például ha még nem határozták meg egy új termék árát). Éppen ezért elengedhetetlen, hogy a valódi entitásokat (például egy céget) modellező adatbázisok is képesek legyenek rögzíteni a hiányzó adatokat. A mezők és vezérlőelemek null értékeit az IsNull függvénnyel keresheti meg, majd az Nz függvénnyel nullává alakíthatja őket.

Mező Kifejezés Leírás
SzállításiRégió Is Null Azon ügyfelek megrendeléseit adja eredményül, akik esetében a SzállításiRégió mező értéke null (hiányzik).
SzállításiRégió Is Not Null Azon ügyfelek megrendeléseit adja eredményül, akik esetében a SzállításiRégió mező értéket tartalmaz.
Fax "" A faxkészülékkel nem rendelkező ügyfelek megrendeléseit jeleníti meg. A hiányzó készüléket null (hiányzó) érték helyett a Fax mezőben megjelenő nulla hosszúságú karakterlánc jelzi.

Vissza a tetejére

Rekordminták egyeztetése a Like operátorral

Az Like operátor nagy rugalmasságot nyújt a mintát követő sorok egyeztetésekor, mivel helyettesítő karaktereket is használhat Like , és megadhat mintákat az Accessben. A * (csillag) helyettesítő karakter például bármilyen típusú karaktersorozat helyettesítésére alkalmas, és megkönnyíti az adott betűvel kezdődő nevek felkutatását. Ezzel a kifejezéssel Like "S*" például megkeresheti az S kezdőbetűvel kezdődő neveket. További információt a Like operátor című cikkben talál.

Mező Kifejezés Leírás
SzállításiNév Like "S*" A SzállításiNév mező minden S kezdőbetűs rekordját megkeresi.
SzállításiNév Like "*Imports" A SzállításiNév mező minden olyan rekordját megkeresi, amely az „importálások” szóra végződik.
SzállításiNév Like "[A-D]*" A SzállításiNév mező minden A, B, C és D kezdőbetűs rekordját megkeresi.
SzállításiNév Like "*ar*" A SzállításiNév mező minden olyan rekordját megkeresi, amelyben megtalálható az „ar” betűkombináció.
SzállításiNév Like "Maison Dewe?" A SzállításiNév mező minden olyan rekordját megkeresi, melynek értékének első fele tartalmazza a „Bobvos” szót, és található benne egy ötbetűs karakterlánc, melynek első négy betűje „Endr” és az utolsó betű ismeretlen.
SzállításiNév Not Like "A*" A SzállításiNév mező minden nem A kezdőbetűs rekordját megkeresi.

Vissza a tetejére

Sorok egyeztetése SQL-összesítésekkel

Az SQL-összesítési vagy területi összegző függvények használata akkor javasolt, ha szelektív módon szeretné összegezni, megszámlálni vagy átlagolni az értékeket. Előfordulhat például, hogy csak egy bizonyos tartományba eső vagy az Igaz értéket eredményező értékeket szeretné megszámlálni. Más esetben szükség lehet egy másik tábla adott értékének megkeresésére és megjelenítésére. A következő táblázatban ismertetett példakifejezések egytől egyig területi összesítő függvények segítségével végzik el a szükséges számításokat az adott értékhalmazokon, a kapott eredményeket pedig a lekérdezés feltételeiként hasznosítják.

Mező Kifejezés Leírás
Fuvardíj > (DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders")) A DStDev és a DAvg függvény segítségével megjeleníti azokat a megrendeléseket, amelyek fuvardíja meghaladta a várt összeget, valamint a fuvardíj szórásának értékét.
Mennyiség > DAvg("[Quantity]", "[Order Details]") A DAvg függvény segítségével megjeleníti az átlagos rendelési mennyiséget meghaladó termékeket.

Vissza a tetejére

Mezők egyeztetése segédlekérdezésekkel

A feltételként használni kívánt értékek kiszámításához segédlekérdezések, más néven beágyazott lekérdezések is használhatók. A következő táblázatban ismertetett példakifejezések a segédlekérdezések eredményei alapján végzik a sorok egyeztetését.

Mező Kifejezés Eredmény
Egységár (SELECT [UnitPrice] FROM [Products] WHERE [ProductName] = "Aniseed Syrup") Azokat a termékeket adja eredményül, amelyek ára megegyezik az Ánizs szirup termék árával.
Egységár >(SELECT AVG([UnitPrice]) FROM [Products]) Az átlagos termékárat meghaladó termékeket adja eredményül.
Fizetés > ALL (SELECT [Salary] FROM [Employees] WHERE ([Title] LIKE "*Manager*") OR ([Title] LIKE "*Vice President*")) Azoknak az üzletkötőknek a fizetését adja eredményül, kiknek fizetése meghaladja az Igazgató vagy Alelnök beosztásban dolgozó alkalmazottak fizetését.
RendelésVégösszege: [Egységár] * [Mennyiség] > (SELECT AVG([UnitPrice] * [Quantity]) FROM [Order Details]) Azokat a rendeléseket adja eredményül, amelyek végösszege meghaladja az átlagos rendelési értéket.

Vissza a tetejére

Frissítő lekérdezések

A frissítő lekérdezésekkel módosíthatók egy adatbázis egy vagy több létező mezőjének adatai. Segítségével elvégezheti a kívánt adatok cseréjét vagy teljes törlését. Az alábbi táblázat bemutatja a kifejezések frissítő lekérdezésekben való használatának néhány módját. Ezeket a kifejezéseket Update To használja a frissíteni kívánt mezőhöz tartozó lekérdezéstervező rács azon sorában, amelyet módosítani szeretne.

A frissítő lekérdezések létrehozásáról a Frissítő lekérdezés létrehozása és futtatása című cikkben talál további információt.

Mező Kifejezés Eredmény
Beosztás "Salesperson" Beírja az Eladó szöveget.
ProjektKezdete #8/10/17# A dátumot 2017.08.10. értékre módosítja.
Kivezetve Yes Egy Igen/Nem típusú mezőben a Nem értéket Igenre módosítja.
Cikkszám "PN" & [PartNumber] Minden megadott cikkszám elé C betűt tesz.
ÖsszesSortétel [UnitPrice] * [Quantity] Kiszámítja az Egységár és a Mennyiség szorzatát.
Fuvardíj [Freight] * 1.5 50%-kal megnöveli a fuvardíjakat.
Értékesítés DSum("[Quantity] * [UnitPrice]", "Order Details", "[ProductID]=" & [ProductID]) Ha az aktuális tábla Termékkód mezőjének értékei megegyeznek a Rendelés részletei nevű tábla Termékkód mezőjének értékeivel, a kifejezés a Mennyiség és az Egységár mező szorzata alapján frissíti az értékesítési eredményeket.
CímIrányítószáma Right([ShipPostalCode], 5) A bal szélső karaktereket levágva csak az öt jobb szélső karaktert jeleníti meg.
Egységár Nz([UnitPrice]) Az Egységár mező egy null (meghatározatlan vagy ismeretlen) értékét nullára (0) módosítja.

Vissza a tetejére

SQL-utasítások

A Structured Query Language (SQL) az Access által használt lekérdezésnyelv. A Lekérdezéstervező nézetben létrehozott minden lekérdezés SQL-nyelven is kifejezhető. Egy lekérdezés SQL-utasításának megtekintéséhez válassza a Nézet menü SQL nézet parancsát. Az alábbi táblázatban kifejezést használó SQL-utasításokra találhat példákat.

Kifejezést használó SQL-utasítás Eredmény
SELECT [FirstName],[LastName] FROM [Employees] WHERE [LastName]="Danseglio"; A Zoltán utónevű alkalmazottak esetében megjeleníti a Vezetéknév és az Utónév nevű mezők tartalmát.
SELECT [ProductID],[ProductName] FROM [Products] WHERE [CategoryID]=Forms![New Products]![CategoryID]; Megjeleníti a Termékek tábla Termékkód és Terméknév nevű mezőinek tartalmát azon rekordok esetében, melyekben a Kategóriaazonosító mező tartalma megegyezik a megnyitott Új termékek űrlap Kategóriaazonosító nevű mezőjének tartalmával.
SELECT Avg([ExtendedPrice]) AS [Average Extended Price] FROM [Order Details Extended] WHERE [ExtendedPrice]>1000; Kiszámítja a teljes ár átlagát azon megrendelések esetében, melyekben a TeljesÁr mező értéke nagyobb mint 1000, majd az eredményt megjeleníti a Teljes ár átlaga nevű mezőben.
SELECT [CategoryID], Count([ProductID]) AS [CountOfProductID] FROM [Products] GROUP BY [CategoryID] HAVING Count([ProductID])>10; A TermékkódSzáma nevű mezőben megjeleníti, hogy hány termék szerepel a 10-nél több terméket tartalmazó kategóriákban.

Vissza a tetejére

Táblakifejezések

A kifejezések a táblákban leggyakrabban egy alapértelmezett érték hozzárendelésére vagy egy érvényességi szabály létrehozására használatosak.

Alapértelmezett mezőértékek

Adatbázisok tervezésekor előfordulhat, hogy alapértelmezett értéket szeretne rendelni egy mezőhöz vagy vezérlőelemhez. Az Access ezt az értéket közöl a mezőt tartalmazó új rekord létrehozásakor, vagy a vezérlőelemet tartalmazó objektum létrehozásakor. A következő táblázatban ismertetett kifejezések egy mező vagy vezérlőelem alapértelmezett értékeire mutatnak példákat. Ha egy vezérlőelem egy tábla egy mezőjéhez van kötve, és a mezőhöz alapértelmezett érték tartozik, a vezérlőelemhez rendelt alapértelmezett érték élvez elsőbbséget.

Mező Kifejezés Alapértelmezett mezőérték
Mennyiség 1 1
Megye "MT" Zala
Megye "New York, N.Y." Győr, Győr-Moson-Sopron (Ne feledje idézőjelbe tenni az értéket, ha az írásjelet tartalmaz.)
Fax "" Egy nulla hosszúságú karakterlánc, amely azt jelzi, hogy a mezőnek alapértelmezés szerint üresnek kellene lennie, azonban null értéket tartalmaz
Rendelési dátum Date( ) A mai dátum
Határidő Date() + 60 A mai naptól számított 60. nap dátuma

Vissza a tetejére

Mezőérvényesítési szabályok

A mezőre vagy vezérlőelemre vonatkozó érvényességi szabályok kifejezéssel hozhatók létre. Az Access ezután minden esetben érvénybe lépteti a szabályokat, ha az adott mezőben vagy vezérlőelemen adatot ad meg. Érvényességi szabály létrehozásához módosítsa a ValidationRule mező vagy vezérlőelem tulajdonságát. Érdemes megfontolnia a tulajdonság beállítását ValidationText is, amely az érvényességi szabály megszegése esetén megjelenített szöveget tartalmazza. Ha nem állítja be a tulajdonságot ValidationText , az Access egy alapértelmezett hibaüzenetet jelenít meg.

A következő táblázatban található példák a ValidationRule tulajdonsághoz és a tulajdonsághoz kapcsolódó szöveghez ValidationText tartozó érvényességi szabályok kifejezéseit mutatják be.

ValidationRule tulajdonság ValidationText tulajdonság
<> 0 Kérjük, a nullától eltérő értéket adjon meg.
0 Or > 100 Az értéknek nullának vagy 100-nál nagyobbnak kell lennie.
Like "K???" Az értéknek négy karakterből kell állnia, és K betűvel kell kezdődnie.
< #1/1/2017# 2017.01.01. előtti dátumot adjon meg.
>= #1/1/2017# And < #1/1/2008# A dátumnak a 2017. évben kell lennie.

Az adatok érvényesítéséről további információt az Érvényességi szabály létrehozása mező adatainak érvényesítésére című cikkben talál.

Vissza a tetejére

Makrókifejezések

Előfordulhat, hogy csak olyankor szeretné végrehajtani a makró egyik műveletét vagy műveletsorát, ha egy bizonyos feltétel teljesül. Tegyük fel például, hogy egy műveletet csak akkor szeretne futtatni, ha a Számláló szövegmező értéke 10. A feltétel meghatározásához használhat kifejezést a Ha blokkokban:

[Counter]=10

A Ha blokkokban szereplő kifejezések is feltételes kifejezések, akárcsak a ValidationRule tulajdonság esetében. Fel kell oldania a True vagy a False. A program csak akkor hajtja végre az adott műveletet, ha a feltétel igaz.

A művelet végrehajtásához szükséges kifejezés Ha
[City]="Paris" A Település nevű mező értéke Budapest azon az űrlapon, amelyen a makrót futtatta.
DCount("[OrderID]", "Orders") > 35 A Rendelések tábla Rendelésazonosító nevű mezőjében több mint 35 bejegyzés szerepel.
DCount("*", "[Order Details]", "[OrderID]=" & Forms![Orders]![OrderID]) > 3 A Rendelés részletei táblában háromnál több olyan bejegyzés szerepel, amelynél a tábla Rendelésazonosító nevű mezőjének értéke megegyezik a Rendelések űrlap Rendelésazonosító nevű mezőjének értékével.
[ShippedDate] Between #2-Feb-2017# And #2-Mar-2017# A makrót futtató űrlap SzállításiDátum nevű mezőjének értéke 2017.02.02. és 2017.03.02. közé esik.
Forms![Products]![UnitsInStock] < 5 A Termékek űrlap Raktáron nevű mezőjének értéke kisebb 5-nél.
IsNull([FirstName]) A makrót futtató űrlap Vezetéknév nevű mezőjének értéke null (nem tartalmaz értéket). A kifejezés a következőképpen is használható: [Vezetéknév] Is Null.
[CountryRegion]="UK" And Forms![SalesTotals]![TotalOrds] > 100 A makrót futtató űrlap OrszágRégió nevű mezőjének értéke Magyarország, és az ÖsszEladás űrlap ÖsszRend mezőjének értéke nagyobb 100-nál.
[CountryRegion] In ("France", "Italy", "Spain") And Len([PostalCode])<>5 A makrót futtató űrlap OrszágRégió nevű mezőjének értéke Franciaország, Olaszország vagy Spanyolország, az irányítószám pedig 5 karaktertől eltérő hosszúságú.
MsgBox("Confirm changes?",1)=1 Az OK gombra kattint az MsgBox függvény által megjelenített párbeszédpanelen. Ha a párbeszédpanel Mégse gombjára kattint, az Access figyelmen kívül hagyja a műveletet.

Vissza a tetejére

Lásd még