Navodila za sintakso izrazov

Ko uporabljate Microsoft Access, morate pogosto delati z vrednostmi, ki niso neposredno v vaših podatkih. Vzemimo za primer, da morate za naročilo izračunati prometni davek ali skupno vrednost samega naročila. Te vrednosti lahko izračunate z izrazi. Če želite uporabljati izraze, jih morate zapisati z ustrezno sintakso. Sintaksa je nabor pravil, ki določa pravilno združevanje besed in simbolov v izrazih. Sprva boste izraze v Accessu morda malce težje brali. Toda z dobrim razumevanjem sintakse izraza in nekaj vaje pa branje postane lažje.

V tem članku

Pregled izrazov

Sestavni deli izrazov

Predmeti, zbirke in lastnosti

Identifikatorji

Funkcije, operatorji, konstante in vrednosti

Omejitev ugnezdenja za izraze v spletni zbirki podatkov je 65

Pregled izrazov

Izraz je kombinacija nekaterih ali vseh teh elementov: vgrajenih ali uporabniško določenih funkcij, identifikatorjev, operatorjev, vrednosti in konstant, ovrednotenih kot posamezna vrednost.

Komponente izraza

Na primer v tem izrazu so pogoste komponente:

=Sum([Purchase Price])*0.08 
  • Sum() je vgrajena funkcija

  • [Purchase Price] je identifikator

  • * je matematični operator

  • 0.08 je konstanta

Ta izraz lahko uporabite v polju z besedilom v nogi obrazca ali nogi poročila, z njim pa lahko izračunate prometni davek za skupino elementov.

Izrazi so lahko precej bolj zapleteni ali bolj preprosti od tega primera. Ta izraz Logičen je na primer sestavljen le iz operaterja in konstante:

>0

Ta izraz vrne:

  • True, ko je primerjan s številom, ki je večje od 0.

  • False, ko je primerjan s številom, ki je manjše od 0.

Ta izraz lahko uporabite v lastnosti Veljavnostno pravilo kontrolnika ali polja tabele table in z njim poskrbite, da so vnesene le pozitivne vrednosti. Izrazi se uporabljajo na številnih mestih za izvajanje izračunov, spreminjanje znakov ali preverjanje podatkov. Tabele, poizvedbe, obrazci, poročila in makri – vsi imajo lastnosti, ki sprejemajo izraze. Izraze lahko na primer uporabljate v lastnosti vir kontrolnikov in Privzeta vrednost kontrolnika. Izraze lahko uporabljate tudi v lastnosti Veljavnostno pravilo za polje tabele.

Na vrh strani

Sestavni deli izrazov

Pri sestavljanju izraza združujete identifikatorje z uporabo funkcij, operatorjev, konstant in vrednosti. Vsak veljaven izraz mora vsebovati vsaj eno funkcijo ali vsaj en identifikator in lahko vsebuje tudi konstante ali operatorje. Uporabite lahko tudi izraz, ki je del drugega izraza, po navadi kot argument funkcije. To se imenuje ugnezdenje izraza.

  • Identifikatorji    Splošna oblika:

    [Collection name]![Object name].[Property name]

    Določiti morate le dovolj delov identifikatorja, da bo v kontekstu vašega izraza enoličen. Oblika identifikatorja [Object name] ni nič neobičajnega.

  • Funkcije    Splošna oblika:

    Function(argument, argument)

    Eden od argumentov je običajno identifikator ali izraz. Za nekatere funkcije argumenti niso potrebni. Preden uporabite določeno funkcijo, preglejte sintakso te funkcije. Če želite več informacij, glejte Funkcije (razporejene po kategoriji).

  • Operatorji    Splošna oblika:

    Identifier operator identifier

    V zvezi s to obliko obstajajo izjeme, kot je podrobneje razloženo v razdelku Operatorji.

  • Konstante    Splošna oblika:

    Identifier comparison_operator  constant
  • Vrednosti    Vrednosti se lahko pojavijo na različnih mestih v izrazu.

Na vrh strani

Predmeti, zbirke in lastnosti

Vse tabele, poizvedbe, obrazci, poročila in polja v Accessovi zbirki podatkov so posamezno poimenovani predmeti. Vsak predmet ima ime. Nekateri predmeti so že poimenovani, npr. tabela »Stiki«, ki je ustvarjena iz Microsoft Office Accessove predloge za stike. Ko ustvarite nov predmet, ga poimenujete.

Ime nabora vseh članov določene vrste predmeta je zbirka. Nabor vseh tabel v zbirki podatkov na primer je zbirka. Nekateri predmeti, ki so člani zbirke v vaši zbirki podatkov, so lahko tudi zbirke, ki vsebujejo druge predmete. Na primer, predmet tabele je zbirka, ki vsebuje predmete polj.

Predmeti imajo lastnosti, ki jih opisujejo in zagotavljajo način za spreminjanje lastnosti predmetov. Predmet poizvedbe na primer ima lastnost Privzeti pogled, ki tako opisuje predmet kot tudi omogoča, da določite, kako bo poizvedba ob zagonu prikazana.

Na spodnji sliki so prikazane relacije med zbirkami, predmeti in lastnostmi:

Relacija zbirk do predmetov do lastnosti

3 Lastnost

2 Predmet

1 Zbirka

Na vrh strani

Identifikatorji

Ko v izrazu uporabite predmet, zbirko ali lastnost, se na ta element sklicujete z identifikatorjem. Identifikator vključuje ime elementa, ki ga želite identificirati, in tudi ime elementa, ki mu pripada. Identifikator za polje na primer vključuje ime polja in ime tabele, ki ji polje pripada. Primer takšnega identifikatorja:

[Customers]![BirthDate]

V nekaterih primerih je lahko že ime elementa identifikator. To drži, če je ime elementa enolično v kontekstu izraza, ki ga sestavljate. Preostanek identifikatorja nakazuje kontekst. Če na primer oblikujete poizvedbo, ki uporablja le eno tabelo, bodo že samo imena polj imeli vlogo identifikatorja, saj morajo biti imena polj v tabeli enolična v tej tabeli. Ker uporabljate le eno tabelo, je ime tabele nakazano v katerem koli identifikatorju, ki ga uporabite v poizvedbi za sklicevanje na polje.

V drugih primerih morate biti v zvezi z deli identifikatorja pri sklicevanju na delo eksplicitni. To drži, če identifikator ni enoličen v kontekstu izraza. Če obstaja dvoumnost, morate eksplicitno določiti dovolj delov identifikatorja, da bo enoličen v kontekstu. Denimo, da želite oblikovati poizvedbo, ki uporablja tabel z imenom »Izdelki« in tabelo z imenom »Naročila«, obe tabeli pa vključujeta polje z imenom IDIzdelka. V takšnem primeru mora identifikator, ki ga uporabljate v poizvedbi za sklicevanje na eno ali drugo polje IDIzdelka, poleg imena polja vključevati tudi ime tabele. Na primer:

[Products]![ProductID]

Operatorji identifikatorja    V identifikatorju lahko uporabite tri operatorje:

  • Operator s klicajem (!)

  • Operator s piko (.)

  • Operator z oglatimi oklepaji ([ ])

Te operatorje uporabite tako, da na začetek in konec vsakega identifikatorja postavite oglate oklepaje, nato pa jih združite, pri čemer uporabite bodisi klicaj bodisi piko. Na primer, identifikator za polje z imenom »Priimek« v tabeli z imenom »Zaposleni« lahko izrazite kot [Employees]![Last Name]. Operator s klicajem pove Accessu, da je tisto, kar sledi, predmet, ki pripada zbirki, ki je pred operatorjem s klicajem. V tem primeru je [Priimek] predmet polja, ki pripada zbirki [Zaposleni], ki je sama po sebi predmet tabele.

V ožjem smislu, ni vam treba vedno vnesti oglatih oklepajev na začetek in konec identifikatorja ali delnega identifikatorja. Če v identifikatorju ni presledkov ali drugih posebnih znakov, Access pri branju izraza samodejno doda oklepaje. Kljub temu je dobro, če sami vnesete oklepaje in se tako izognete morebitnim napakam, poleg tega pa je zaradi oklepajev lažje vizualno ločiti identifikator kot del izraza.

Na vrh strani

Funkcije, operatorji, konstante in vrednosti

Za ustvarjanje izraza pa ne potrebujete le identifikatorje, temveč morate tudi izvesti neko dejanje. Za izvajanje dejanj v izrazu uporabljate funkcije, operatorje in konstante.

Funkcije

Funkcija je postopek, ki ga lahko uporabite v izrazu. Nekatere funkcije, kot je Datum, ne zahtevajo nobenega dodatnega dela. Za večino funkcij pa je potreben ukrep, ki se imenuje »argumenti«.

V primeru na začetku tega članka sta v funkciji DatePart uporabljena dva argumenta: argument intervala z vrednostjo "yyyy" in argument datuma z vrednostjo [Customers]![BirthDate]. Funkcija DatePart zahteva najmanj ta dva argumenta (interval in datum), sprejme pa lahko do štiri argumente.

Na spodnjem seznamu so prikazane nekatere funkcije, ki se pogosto uporabljajo v izrazih. Če želite več informacij o sintaksi, ki jo uporabljate s posamezno funkcijo, kliknite povezavo za vsako posamezno funkcijo.

  • Funkcija Date se uporablja za vstavljanje trenutnega sistemskega datuma v izraz. Po navadi se uporablja v povezavi s funkcijo »Oblika« in tudi v povezavi z identifikatorji polja za polja, ki vsebujejo podatke o datumu/času.

    =Date()
  • Funkcija DatePart se uporablja za določitev ali izločitev dela datuma – po navadi se datum pridobi iz identifikatorja polja, včasih pa iz vrednosti datuma, ki jo vrne druga funkcija, npr. »Date«.

    DatePart ( "yyyy", Date())
  • Funkcija DateDiff se uporablja za določitev razlike med dvema datumoma – po navadi med datumom, ki je pridobljen iz identifikatorja polja, in datuma, ki je pridobljen z uporabo funkcije »Date«.

    =DateDiff(“d”, Now(), [Orders].[ReceiveBefore])-10 
  • Funkcija Format se uporablja za uporabo oblike za identifikator in tudi za rezultate druge funkcije.

    Format([Date],"ww")=Format(Now(),"ww")-1 
  • Funkcija IIf se uporablja za oceno izraza kot »true« ali »false«. Nato funkcija vrne eno določeno vrednost, če je izraz ocenjen kot »true«, in drugo določeno vrednost, če je izraz ocenjen kot »false«.

    =IIf([CountryRegion]="Italy", "Italian", "Some other language")
  • Funkcija InStr se uporablja za iskanje položaja znaka ali niza znotraj drugega niza. Iskani niz se po navadi pridobi iz identifikatorja polja.

    InStr(1,[IPAddress],".")
  • Funkcije Left, Mid in Right se uporabljajo za izvlečenje zankov iz niza tako, da začnejo s skrajno levim znakom (Left), na določenem mestu na sredini (Mid) ali pa s skrajno desnim znakom (Right). Po navadi se uporabljajo v povezavi s funkcijo »InStr«. Niz, iz katerega te funkcije izvlečejo znake, je običajno pridobljen iz identifikatorja polja.

    Left([ProductName], 1)
    Right([AssetCode], 2) 
    Mid([Phone],2,3) 
    

Če želite seznam funkcij, glejte Funkcije (razvrščene po kategoriji).

Operatorji

Operator je beseda ali simbol, ki označuje določeno aritmetično ali logično relacijo med drugimi elementi izraza. Operatorji so lahko:

  • Aritmetične, kot je znak plus (+).

  • Primerjava, kot je znak je enako (=).

  • Logične, kot je Not.

  • Spojitev, kot je &.

  • Posebne, kot je Like.

Operatorji se običajno uporabljajo za označevanje relacije med dvema identifikatorjema. V spodnji tabeli so opisani operatorji, ki jih lahko uporabljate v Accessovih izrazih.

Aritmetične    

Z aritmetičnimi operatorji lahko izračunate vrednost, če imate dve števili ali več ali če želite spremeniti znak števila iz pozitivnega v negativno.

Operator

Namen

Primer

+

Vsota dveh števil.

[Delna vsota]+[ProdajniDavek]

-

Najde razliko med dvema številoma ali označi negativno vrednost števila.

[Cena]-[Popust]

*

Pomnoži dve števili.

[Količina]*[Cena]

/

Razdeli prvo število z drugim številom.

[Skupaj]/[ŠteviloElementov]

\

Zaokroži obe števili v celo število, razdeli prvo število z drugim številom in nato prireže število na celo število.

[Registrirano]\[Sobe]

Mod

Razdeli prvo število z drugim številom in vrne le ostanek pri deljenju.

[Registrirano] Mod [Sobe]

^

Vrne število s potenco eksponenta.

Število ^ eksponent

Primerjava    

Z operatorji primerjave primerjate vrednosti in dobite rezultat, ki je ovrednoten kot »True«, »False« ali »Null« (neznana vrednost).

Operator

Namen

<

Ovrednoti, če je prva vrednost manjša od druge vrednosti.

<=

Ovrednoti, če je prva vrednost enaka kot druga vrednost ali manjša od nje.

>

Ovrednoti, če je prva vrednost večja od druge vrednosti.

>=

Ovrednoti, če je prva vrednost enaka kot druga vrednost ali večja od nje.

=

Ovrednoti, če je prva vrednost enaka kot druga vrednost.

<>

Ovrednoti, če prva vrednost ni enaka kot druga vrednost.

V vseh primerih je rezultat ovrednoten kot Null, če je prva ali druga vrednost Null. Null predstavlja neznano vrednost, zato je rezultat vsake primerjave, ki vsebuje vrednost Null, prav tako neznan.

Logične    

Z logičnimi operatorji združujete dve vrednosti in jih ovrednotite kot »true«, »false« ali »null«. Logični operatorji se imenujejo tudi operatorji Boolean.

Operator

Uporaba

Opis

And

Izr1 in Izr2

»True«, če sta »Izr1« in »Izr2« ovrednotena kot »true«.

Or

Izr1 ali Izr2

»True«, če je bodisi »Izr1« bodisi »Izr2« ovrednoten kot »true«.

Eqv

Izr1 Eqv Izr2

»True«, če sta oba, »Expr1« in »Expr2«, ovrednotena kot »true«, ali če sta oba, »Izr1« in »Izr2«, ovrednotena kot »false«.

Not

Ni izr

»True«, če je »Izr« ovrednoten kot »not true«.

Xor

Izr1 X ali Izr2

»True«, če je bodisi »Izr1« ovrednoten kot »true«, bodisi je »Izr2« ovrednoten kot »true«, nista pa tako ovrednotena oba.

Spojitev    

Z operatorji spajanja kombinirate dve besedilni vrednosti tako, da dobite en niz.

Operator

Uporaba

Opis

&

niz1 in niz2

Združi dva niza v en niz.

+

niz1 + niz2

Združi dva niza v en niz in propagira vrednosti »null«.

Posebne    

Posebne operatorje uporabljate, kot je opisano v spodnji tabeli.

Operator

Opis

Če želite več informacij

Is Null or Is Not Null

Določa, ali je vrednost ovrednotena kot »Null« ali »Not Null«.

Like "pattern"

Primerja ujemanje vrednosti nizov z operatorji z nadomestnimi znaki ? in *.

Operator Like

Between val1 And val2

Določa, ali je številska ali datumska vrednost v obsegu.

Operator »Between...And«

In(string1,string2...)

Določa, ali je vrednost niza znotraj niza vrednosti niza.

In Operator

Konstante

Konstanta je znana vrednost, ki se ne spremeni in jo lahko uporabite v izrazu. V Accessu so štiri pogosto uporabljane konstante:

  • True Označuje nekaj, kar je logično resnično.

  • False Označuje nekaj, kar je logično napačno.

  • Null Označuje, da manjka znana vrednost.

  • "" (empty string) Označuje vrednost, za katero je znano, da je prazna.

Konstante se lahko uporabijo kot argumenti za funkcije in se lahko uporabijo v izrazu kot del pogoja. Tako lahko na primer uporabite konstanto praznega niza ("") kot del pogoja za stolpec v poizvedbi, da ovrednotite vrednosti polja za ta stolpec tako, da kot pogoj vnesete to: <>"". V tem primeru je <> operator, "" pa je konstanta. Če ju uporabite skupaj, označujeta, da bi morali identifikator, za katerega sta uporabljena, primerjati s praznim nizom. Vrnjen izraz je ovrednoten kot »true le, če vrednost identifikatorja ni prazen niz.

Bodite previdni pri uporabi konstante Null. V večini primerov uporabe konstante Null v povezavi z operatorjem primerjave vrne napako. Če želite primerjati vrednost s konstanto Null v izrazu, uporabite operator Is Null ali Is Not Null.

Vrednosti

V izrazih lahko uporabite dobesedne vrednosti, na primer število 1254 ali niz »Vnesite število med 1 in 10«. Lahko uporabite tudi številske vrednosti, ki so lahko nizi številk, ki po potrebi vključujejo tudi znak in decimalno vejico. Če manjka predznak, Access predvideva, da je število pozitivno. Če želite, da bo vrednost negativna, vključite znak minus (). Uporabite lahko tudi znanstveni zapis. Če želite to narediti, vnesite »E« ali »e« in znak za eksponent (na primer 1,0E-6).

Ko uporabljate besedilne nize, jih vedno postavite v narekovaje, saj tako zagotovite, da si jih Access pravilno razlaga. V določenih okoliščinah bo Access samodejno ponudil narekovaje. Ko v izraz vnesete na primer besedilo za veljavnostno pravilo ali pogoj poizvedbe, Access vnesene besedilne nize samodejno postavi v narekovaje.

Če želite na primer vnesti besedilo Paris, Access v izrazu prikaže »Pariz«. Če želite, da bo rezultat izraza niz, ki je med dvojnimi narekovaji, lahko napišete ugnezden niz v enojnih (') narekovajih ali v trikratnih dvojnih (") narekovajih. Ta izraza sta na primer enakovredna:

Forms![Contacts]![City]. DefaultValue = ' "Paris" ' 
Forms![Contacts]![City].DefaultValue = " " "Paris" " " 

Če želite uporabiti vrednosti za datum/čas, jih postavite med znaka za lojtro (#). #3-7-17#, ##7-Mar-17# in #Mar-7-2017# so na primer vse veljavne vrednosti za datum/čas. Ko Access ugotovi, da so datumske/časovne vrednosti med znaki za lojtro (#) veljavne, te vrednosti samodejno obravnava kot podatkovni tip »Datum/čas«.

Na vrh strani

Omejitev ugnezdenja za izraze v spletni zbirki podatkov je 65

Izrazi, ki so ugnezdeni več kot 65 ravni globoko, v brskalniku ne bodo delovali, zato takšnih izrazov ne smete uporabljati v Accessovi spletni zbirki podatkov. Sporočila o napakah se sicer ne bodo pojavila, izrazi pa preprosto ne bodo delovali.

Z uporabo operatorjev &, AND in OR lahko ustvarite dodatne ugnezditvene ravni v strežniku, ki se ne odražajo v Accessovem odjemalcu. Izraz "a" & "b" & "c" na primer ni ugnezden v graditelju izrazov, vendar se v SharePointu spremeni v concatenate.Db("a", concatenate.Db("b", "c") ). Ta prevod ustvari eno raven ugnezdenja. Z uporabo več zaporednih operatorjev &, AND ali OR v enem izrazu lahko presežete število omejitev ugnezdenja v strežniku, ki je 65, in zato izraz v brskalniku ne bo deloval.

Na vrh strani

Glejte tudi

Uporaba graditelja izrazov

Uvod v izraze

Gradnja izraza

Primeri izrazov

Razširite poznavanje Officea
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×