Primjeri izraza

Ovaj članak sadrži brojne primjere izraza u programu Access. Izraz je kombinacija matematičkih i logičkih operatora, konstanti, funkcija, polja tablice, kontrola te svojstava koja kao rezultat daje jednu vrijednost. Pomoću izraza u programu Access možete izračunati vrijednosti, provjeriti valjanost podataka i postaviti zadanu vrijednost.

Sadržaj članka

Obrasci i izvješća

Tablice u ovom odjeljku sadrže primjere izraza koji izračunavaju vrijednost u kontroli koja se nalazi u obrascu ili izvješću. Da biste stvorili izračunatu kontrolu, izraz umjesto u polje tablice ili upit unesite u svojstvo kontrole ControlSource.

Napomena    Izraze u obrascu ili izvješću možete koristiti i kada istaknete podatke uvjetnim oblikovanjem.

Operacije s tekstom

Izrazi u tablici u nastavku koriste operatore & i + (plus) radi objedinjavanja nizova teksta, ugrađene funkcije radi upravljanja nizom teksta i druge načine upravljanja tekstom radi stvaranja kontrole izračuna.

Izraz

Rezultat

="Nije dostupno"

Prikazuje Nije dostupno.

=[Ime] & " " & [Prezime]

Prikazuje vrijednosti koje se nalaze u poljima tablice Ime i Prezime. U ovom se primjeru pomoću operatora & objedinjuju polje Ime, razmak (unutar navodnika) i polje Prezime.

=Left([ProductName], 1)

Pomoću funkcije Left prikazuje prvi znak vrijednosti polja ili kontrole ProductName.

=Right([AssetCode], 2)

Pomoću funkcije Right prikazuje zadnja dva znaka vrijednosti u polju ili kontroli AssetCode.

=Trim([Address])

Pomoću funkcije Trim prikazuje vrijednost kontrole Address i pritom uklanja razmake ispred i iza vrijednosti.

=IIf(IsNull([Regija]), [Grad] & " " & [PoštanskiBroj], [Grad] & " " & [Regija] & " " & [PoštanskiBroj])

Pomoću funkcije IIf prikazuje vrijednosti kontrola Grad i PoštanskiBroj ako kontrola Regija ima vrijednost null. U suprotnom prikazuje vrijednosti kontrola Grad, Regija i PoštanskBroj razdvojene razmakom.

=[Grad] & (" " + [Regija]) & " " & [PoštanskiBroj]

Pomoću operatora + i prijenosa vrijednosti null prikazuje vrijednosti kontrola Grad i PoštanskiBroj ako polje ili kontrola Regija ima vrijednost null. U suprotnom prikazuje vrijednosti polja ili kontrola Grad, Regija i PoštanskiBroj razdvojene razmakom.

Prijenos vrijednosti null znači da će cijeli izraz imati vrijednost null ako neka njegova komponenta ima vrijednost null. Operator + podržava prijenos vrijednosti null, a operator & ga ne podržava.

Vrh stranice

Zaglavlja i podnožja

Svojstva Stranica i Stranice omogućuju prikaz i ispis brojeva stranica u obrascima i izvješćima. Svojstva Stranica i Stranice dostupna su samo tijekom ispisa i pretpregleda ispisa, pa se ne prikazuju na popisu svojstava za obrazac ili izvješće. Ta se svojstva obično koriste tako da se u zaglavlje ili podnožje obrasca ili izvješća doda tekstni okvir, a zatim upotrijebi odgovarajući izraz, npr. neki od izraza navedenih u tablici u nastavku.

Dodatne informacije o korištenju zaglavlja i podnožja u obrascima i izvješćima potražite u članku Umetanje brojeva stranica u obrazac ili izvješće.

Izraz

Rezultat

=[Stranica]

1

="Stranica" & [Stranica]

Okno zadatka Provjera pristupačnosti s rezultatima provjere pristupačnosti

="Stranica" & [Stranica] & " od " & [Stranice]

Stranica 1 od 3

=[Stranica] & " od " & [Stranice] & " str."

1 od 3 str.

=[Stranica] & "/" & [Stranica] & " str."

1/3 str.

=[Država/regija] & " – " & [Stranica]

Hrvatska – 1

=Format([Stranica], "000")

001

="Ispisano: " & Date()

Ispisano: 12/31/17

Vrh stranice

Aritmetičke operacije

Pomoću izraza možete zbrajati, oduzimati, množiti i dijeliti vrijednosti u dva ili više polja ili kontrola. Pomoću izraza možete i izvoditi aritmetičke operacije s datumima. Recimo da imate datumsko-vremensko polje tablice pod nazivom TraženiDatum. Izraz =[RequiredDate] - 2 u polju ili u kontroli povezanoj s njim vraća vrijednost datuma i vremena koja za dva dana prethodi trenutnim vrijednostima u polju TraženiDatum.

Izraz

Rezultat

=[Podzbroj]+[Vozarina]

Zbroj vrijednosti polja ili kontrola Podzbroj i Vozarina.

=[TraženiDatum]-[DatumOtpreme]

Interval između vrijednosti datuma polja ili kontrola TraženiDatum i DatumOtpreme.

=[Cijena]*1,06

Umnožak vrijednosti polja ili kontrole Cijena i broja 1,06 (povećava vrijednost polja Cijena za 6 %).

=[Količina]*[Cijena]

Umnožak vrijednosti polja ili kontrola Količina i Cijena.

=[EmployeeTotal]/[CountryRegionTotal]

Kvocijent vrijednosti polja ili kontrola EmployeeTotal i CountryRegionTotal.

Napomena    Kada u izrazu koristite aritmetičke operatore (+, -, * i /) i jedna od kontrola u izrazu ima vrijednost null, rezultat cijelog izraza bit će vrijednost null – to je tzv. prijenos vrijednosti null. Ako bi neki zapis u nekoj kontroli u izrazu mogao imati vrijednost null, prijenos vrijednosti null možete spriječiti tako da vrijednost null pretvorite u nulu pomoću funkcije Nz – npr. =Nz([Subtotal])+Nz([Freight]).

Vrh stranice

Vrijednosti u drugim kontrolama

Katkad vam je potrebna vrijednost koja se nalazi negdje drugdje, npr. u polju ili kontroli u nekom drugom obrascu ili izvješću. Pomoću izraza možete vratiti vrijednost iz nekog drugog polja ili kontrole.

U tablici u nastavku navedeni su primjeri izraza koje možete koristiti u kontrolama izračuna u obrascima.

Izraz

Rezultat

=Forms![Narudžbe]![IDnarudžbe]

Vrijednost kontrole IDnarudžbe u obrascu Narudžbe.

=Forms![Narudžbe]![Podobrazac narudžbi].Form![PodzbrojNarudžbi]

Vrijednost kontrole PodzbrojNarudžbi u podobrascu Podobrazac narudžbi u obrascu Narudžbe.

=Forms![Narudžbe]![Podobrazac narudžbi]![IDproizvoda].Column(2)

Vrijednost trećeg stupca u okviru s popisom s više stupaca IDproizvoda u podobrascu Podobrazac narudžbi u obrascu Narudžbe. (Imajte na umu da se 0 odnosi na prvi stupac, 1 na drugi itd.)

=Forms![Narudžbe]![Podobrazac narudžbi]![Cijena] * 1,06

Umnožak vrijednosti kontrole Cijena u podobrascu Podobrazac narudžbi u obrascu Narudžbe i broja 1,06 (vrijednost kontrole Cijena povećava za 6 %).

=Parent![IDnarudžbe]

Vrijednost kontrole IDnarudžbe u glavnom ili nadređenom obrascu trenutnog podobrasca.

Izrazi u tablici u nastavku pokazuju neke od načina korištenja kontrola izračuna u izvješćima. Izrazi se pozivaju na svojstvo Report.

Izraz

Rezultat

=Report![Faktura]![IDnarudžbe]

Vrijednost kontrole "IDnarudžbe" u izvješću "Faktura".

=Report![Sažetak]![Podizvješće sažetka]![UkupnaProdaja]

Vrijednost kontrole UkupnaProdaja u podizvješću Podizvješće sažetka u izvješću Sažetak.

=Parent![IDnarudžbe]

Vrijednost kontrole IDnarudžbe u glavnom ili nadređenom obrascu trenutnog podizvješća.

Vrh stranice

Vrijednosti funkcija Count, Sum i Average

Vrsta funkcije pod nazivom agregacijska funkcija omogućuje izračunavanje vrijednosti za jedno ili više polja ili kontrola. Možete, primjerice, izračunati ukupni zbroj grupe za podnožje grupe u izvješću ili podzbroj narudžbe za stavke u obrascu. Možete i utvrditi broj stavki u jednom ili više polja ili pak izračunati prosječnu vrijednost.

Izrazi u tablici u nastavku pokazuju neke od načina korištenja funkcija kao što su Avg, Count i Sum.

Izraz

Opis

=Avg([Vozarina])

Pomoću funkcije Avg prikazuje prosjek vrijednosti polja tablice ili kontrole "Vozarina".

=Count([IDnarudžbe])

Pomoću funkcije Count prikazuje broj zapisa u kontroli IDnarudžbe.

=Sum([Prodaja])

Pomoću funkcije Sum prikazuje zbroj vrijednosti kontrole Prodaja.

=Sum([Količina]*[Cijena])

Pomoću funkcije Sum prikazuje zbroj umnoška vrijednosti kontrola Količina i Cijena.

=[Prodaja]/Sum([Prodaja])*100

Prikazuje postotak prodaje utvrđen dijeljenjem vrijednosti kontrole Prodaja sa zbrojem svih vrijednosti kontrole Prodaja.

Ako svojstvo kontrole Format postavite na postotak, u izraz nemojte uvrstiti *100.

Dodatne informacije o korištenju agregacijskih funkcija i ukupnih vrijednosti u polju i stupcima potražite u člancima Zbrajanje podataka pomoću upita, Brojanje podataka pomoću upita, Prikaz ukupnih zbrojeva stupaca u podatkovnoj tablici pomoću retka ukupnog zbroja i Prikaz ukupnih zbrojeva stupaca u podatkovnoj tablici.

Vrh stranice

SQL agregacijske funkcije

SQL ili domenske agregacijske funkcije koristite kada morate selektivno zbrojiti ili prebrojiti vrijednosti. "Domena" se sastoji od jednog ili više polja u jednoj ili više tablica ili pak od jedne ili više kontrola u jednom ili više obrazaca ili izvješća. Vrijednosti u polju tablice, primjerice, možete usporediti s vrijednostima u kontroli u obrascu.

Izraz

Opis

=DLookup("[ImeKontakta]", "[Dobavljači]", "[IDdobavljača] = " & Forms("Dobavljači")("[IDdobavljača]"))

Pomoću funkcije DLookup vraća vrijednost polja ImeKontakta u tablici Dobavljači kada se vrijednost polja IDdobavljača u tablici podudara s vrijednošću kontrole IDdobavljača u obrascu Dobavljači.

=DLookup("[ImeKontakta]", "[Dobavljači]", "[IDdobavljača] = " & Forms![Novi dobavljači]![IDdobavljača])

Pomoću funkcije DLookup vraća vrijednost polja ImeKontakta u tablici Dobavljači kada se vrijednost polja IDdobavljača podudara s vrijednošću kontrole IDdobavljača u obrascu Novi dobavljači.

=DSum("[IznosNarudžbe]", "[Narudžbe]", "[IDkupca] = 'RATTC'")

Pomoću funkcije DSum vraća ukupni zbroj vrijednosti u polju IznosNarudžbe u tablici Narudžbe kada je IDkupca RATTC.

=DCount("[Otpisano]","[Imovina]","[Otpisano]=Da")

Pomoću funkcije DCount vraća broj vrijednosti Da u polju Otpisano (polje Da/ne) u tablici Imovina.

Vrh stranice

Operacije s datumom

Praćenje datuma i vremena osnovna je aktivnost baze podataka. Možete, primjerice, izračunati koliko je dana prošlo od datuma ispostave fakture radi ažuriranja popisa potraživanja. Datume i vremena možete oblikovati na brojne načine navedene u tablici u nastavku.

Izraz

Opis

=Date()

Pomoću funkcije Date prikazuje trenutni datum u obliku mm-dd-yy, pri čemu je mm mjesec (od 1 do 12), dd dan (od 1 do 31), a yy zadnje dvije znamenke godine (od 1980 do 2099).

=Format(Now(), "ww")

Pomoću funkcije Format prikazuje broj tjedna u godini za trenutni datum, pri čemu ww predstavlja tjedne od 1 do 53.

=DatePart("gggg", [DatumNarudžbe])

Pomoću funkcije DatePart prikazuje četveroznamenkastu godinu vrijednosti kontrole DatumNarudžbe.

=DateAdd("g", -10, [ObećaniDatum])

Pomoću funkcije DateAdd prikazuje datum koji za 10 dana prethodi vrijednosti kontrole ObećaniDatum.

=DateDiff("d", [DatumNarudžbe], [DatumOtpreme])

Pomoću funkcije DateDiff prikazuje razliku u danima između vrijednosti kontrola DatumNarudžbe i DatumOtpreme.

=[DatumFakture] + 30

Pomoću aritmetičkih operacija s datumima izračunava datum koji nastupa 30 dana nakon datuma u polju ili kontroli DatumFakture.

Vrh stranice

Uvjeti sa samo dvije vrijednosti

Ogledni izrazi u tablici u nastavku pomoću funkcije IIf vraćaju jednu od dviju mogućih vrijednosti. Funkciji IIf prosljeđuju se tri argumenta: prvi je argument izraz koji mora vratiti vrijednost True ili False. Drugi je argument vrijednost koja će se vratiti ako izraz bude imao vrijednost True, a treći je argument vrijednost koja će se vratiti ako izraz bude imao vrijednost False.

Izraz

Opis

=IIf([Potvrđeno] = "Da", "Narudžba je potvrđena", "Narudžba nije potvrđena")

Pomoću funkcije IIf (Immediate If) prikazuje poruku "Narudžba je potvrđena" ako je vrijednost kontrole Potvrđeno Yes. U suprotnom prikazuje poruku "Order Not Confirmed.".

=IIf(IsNull([Država/regija]), " ", [Država])

Pomoću funkcija IIf i IsNull prikazuje prazan niz ako kontrola Država/regija ima vrijednost null. U suprotnom prikazuje vrijednost kontrole Država/regija.

=IIf(IsNull([Regija]), [Grad] & " " & [PoštanskiBroj], [Grad] & " " & [Regija] & " " & [PoštanskiBroj])

Pomoću funkcija IIf i IsNull prikazuje vrijednosti kontrola Grad i PoštanskiBroj ako kontrola Regija ima vrijednost null. U suprotnom prikazuje vrijednosti polja ili kontrola Grad, Regija i PoštanskiBroj.

=IIf(IsNull([TraženiDatum]) Or IsNull([DatumOtpreme]), "Provjerite ne nedostaje li datum", [TraženiDatum] - [DatumOtpreme])

Pomoću funkcija IIf i IsNull prikazuje poruku "Provjerite ne nedostaje li datum" ako je rezultat oduzimanja vrijednosti DatumOtpreme od vrijednosti TraženiDatum null. U suprotnom prikazuje interval između vrijednosti datuma kontrola TraženiDatum i DatumOtpreme.

Vrh stranice

Upiti i filtri

Ovaj odjeljak sadrži primjere izraza pomoću kojih možete stvoriti izračunato polje u upitu i dodati kriterij u upit. Izračunato je polje stupac u upitu koji proizlazi iz izraza. Možete, primjerice, izračunati vrijednost, objediniti tekstne vrijednosti kao što su imena i prezimena ili oblikovati dio datuma.

Pomoću kriterija u upitu možete ograničiti zapise s kojima radite. Pomoću operatora Between, primjerice, možete odrediti datum početka i datum završetka te ograničiti rezultate upita na narudžbe koje su otpremljene između tih datuma.

Sljedeći odjeljci sadrže primjere izraza koji se koriste u upitima.

Operacije s tekstom

Izrazi u tablici u nastavku koriste operatore & i + za objedinjavanje nizova teksta, ugrađene funkcije za upravljanje nizom teksta i druge načine upravljanja tekstom za stvaranje izračunatog polja.

Izraz

Opis

ImeIprezime: [Ime] & " " & [Prezime]

Stvara polje ImeIprezime koje prikazuje vrijednosti u poljima Ime i Prezime razdvojene razmakom.

Adresa2: [Grad] & " " & [Regija] & " " & [PoštanskiBroj]

Stvara polje Adresa2 koje prikazuje vrijednosti u poljima Grad, Regija i PoštanskiBroj razdvojene razmakom.

Prvoslovoproizvoda: Left([NazivProizvoda], 1)

Stvara polje PrvoSlovoProizvoda, a zatim pomoću funkcije Left u polju PrvoSlovoProizvoda prikazuje prvi znak vrijednosti u polju NazivProizvoda.

KodVrste: Right([ŠifraImovine], 2)

Stvara polje VrstaKoda, a zatim pomoću funkcije Right prikazuje posljednja dva znaka vrijednosti u polju ŠifraImovine.

PozivniBroj: Mid([Telefon],2,3)

Stvara polje PozivniBroj, a zatim pomoću funkcije Mid prikazuje tri znaka počevši od drugog znaka vrijednosti u polju Telefon.

ProširenaCijena: CCur([Detalji narudžbe].JediničnaCijena*[Količina]*(1-[Popust])/100)*100

Izračunatom polju daje naziv ProširenaCijena i koristi funkciju CCur za izračun ukupnih zbrojeva za stavke u retku s primijenjenim popustom.

Vrh stranice

Aritmetičke operacije

Pomoću izraza možete zbrajati, oduzimati, množiti i dijeliti vrijednosti u dva ili više polja ili kontrola. Možete i izvoditi aritmetičke operacije s datumima. Recimo da imate datumsko-vremensko polje pod nazivom TraženiDatum. Izraz =[RequiredDate] - 2 vraća vrijednost datuma i vremena koja za dva dana prethodi vrijednosti u polju TraženiDatum.

Izraz

Opis

UkupnaVozarina: [Vozarina] * 1,1

Stvara polje UkupnaVozarina, a zatim u njemu prikazuje trošak vozarine uvećan za 10 %.

IznosNarudžbe: [Količina] * [JediničnaCijena]

Stvara polje IznosNarudžbe, a zatim prikazuje umnožak vrijednosti u poljima Količina i JediničnaCijena.

Trajanje: [TraženiDatum] - [DatumOtpreme]

Stvara polje Trajanje, a zatim prikazuje razliku između vrijednosti u poljima TraženiDatum i DatumOtpreme.

UkupnoNaSkladištu: [JedinicaNaSkladištu]+[NaručenoJedinica]

Stvara polje UkupnoNaSkladištu i prikazuje zbroj vrijednosti u poljima JedinicaNaSkladištu NaručenoJedinica.

PostotakVozarine: Sum([Vozarina])/Sum([Podzbroj]) *100

Stvara polje PostotakVozarine, a zatim prikazuje postotak troškova vozarine u svakom podzbroju. Izraz pomoću funkcije Sum izračunava ukupne zbrojeve vrijednosti u polju Vozarina, a zatim te ukupne zbrojeve dijeli zbrojem vrijednosti u polju Podzbroj.

Da biste koristili taj izraz, upit odabiranja morate pretvoriti u upit o ukupnim zbrojevima jer morate koristiti redak Ukupni zbroj u rešetki dizajna i ćeliju Ukupni zbroj za to polje postaviti na Izraz.

Dodatne informacije o stvaranju upita o ukupnim zbrojevima potražite u članku Zbrajanje podataka pomoću upita.

Ako svojstvo polja Format postavite na postotak, nemojte uvrstiti *100.

Dodatne informacije o korištenju agregacijskih funkcija i ukupnih vrijednosti u polju i stupcima potražite u člancima Zbrajanje podataka pomoću upita, Brojanje podataka pomoću upita, Prikaz ukupnih zbrojeva stupaca u podatkovnoj tablici pomoću retka ukupnog zbroja i Prikaz ukupnih zbrojeva stupaca u podatkovnoj tablici.

Vrh stranice

Operacije s datumom

Gotovo sve baze podataka pohranjuju i prate datume i vrijeme. S datumima i vremenom u programu Access radite tako da datumsko-vremenska polja u tablicama postavite na vrstu podataka Datum/vrijeme. Access može izvoditi aritmetičke operacije s datumima. Možete, primjerice, izračunati koliko je dana prošlo od datuma ispostave fakture radi ažuriranja popisa potraživanja.

Izraz

Opis

Kašnjenje: =DateDiff("d", [DatumNarudžbe], [DatumOtpreme])

Stvara polje Kašnjenje, a zatim pomoću funkcije DateDiff prikazuje broj dana između datuma narudžbe i datuma otpreme.

GodinaZapošljavanja: DatePart("gggg",[DatumZapošlljavanja])

Stvara polje GodinaZapošljavanja, a zatim pomoću funkcije DatePart prikazuje godinu zapošljavanja svakog zaposlenika.

MinusTrideset: Date( )- 30

Stvara polje MinusTrideset, a zatim pomoću funkcije Date prikazuje datum koji nastupa 30 dana prije trenutnog datuma.

Vrh stranice

SQL agregacijske funkcije

Izrazi u tablici u nastavku koriste SQL (Structured Query Language) funkcije koje agregiraju ili sažimaju podatke. Takve se funkcije (npr. Sum, Count i Avg) često nazivaju agregacijskim funkcijama.

Osim agregacijskih funkcija Access nudi i "domenske" agregacijske funkcije, pomoću kojih možete selektivno zbrajati i brojati vrijednosti. Možete, primjerice, prebrojiti samo vrijednosti unutar određenog raspona ili potražiti vrijednost iz druge tablice. Skup domenskih funkcija zbrajanja obuhvaća funkciju DSum, funkciju DCount i funkciju DAvg.

Za izračunavanje ukupnih zbrojeva često je potrebno stvoriti upit o ukupnim zbrojevima. Za zbrajanje po grupi, primjerice, potrebno je stvoriti upit o ukupnim zbrojevima. Da biste omogućili upit o ukupnim zbrojevima iz rešetke dizajna upita, na izborniku Prikaz kliknite Ukupni zbrojevi.

Izraz

Opis

Brojredaka: Count(*)

Stvara polje BrojRedaka, a zatim pomoću funkcije Count utvrđuje broj zapisa u upitu, uključujući polja s vrijednošću null (prazna).

PostotakVozarine: Sum([Vozarina])/Sum([Podzbroj]) *100

Stvara polje PostotakVozarine, a zatim izračunava postotak troškova vozarine dijeljenjem zbroja vrijednosti u polju Vozarina zbrojem vrijednosti u polju Podzbroj. (U ovom se primjeru koristi funkcija Sum.)

Ovaj se izraz mora koristiti s upitom o ukupnim zbrojevima. Ako svojstvo polja Format postavite na postotak, nemojte uvrstiti *100.

Dodatne informacije o stvaranju upita o ukupnim zbrojevima potražite u članku Zbrajanje podataka pomoću upita.

ProsječnaVozarina: DAvg("[Vozarina]", "[Narudžbe]")

Stvara polje ProsječnaVozarina, a zatim pomoću funkcije DAvg izračunava prosječnu vozarinu za sve narudžbe objedinjene u upitu o ukupnim zbrojevima.

Vrh stranice

Polja u kojima nedostaju podaci

Ovdje prikazani izrazi funkcioniraju s poljima s potencijalno nedostajućim podacima, npr. s poljima koja sadrže vrijednosti null (nepoznate ili nedefinirane vrijednosti). Često možete naići na vrijednosti null, npr. na nepoznatu cijenu za novi proizvod ili na vrijednost koju je suradnik zaboravio dodati u narudžbu. Mogućnost pronalaženja i obrade vrijednosti null ključan je dio operacija baze podataka, a izrazi u tablici u nastavku pokazuju neke uobičajene načine postupanja s vrijednostima null.

Izraz

Opis

Trenutnadržavailiregija: =IIf(IsNull([Država/regija]), " ", [Država])

Stvara polje TrenutnaDržavaIliRegija, a zatim pomoću funkcija IIf i IsNull u njemu prikazuje prazan niz kada polje DržavaIliRegija sadrži vrijednost null. U suprotnom prikazuje sadržaj polja DržavaIliRegija.

Trajanje: IIf(IsNull([TraženiDatum] - [DatumOtpreme]), "Provjerite ne nedostaje li datum", [TraženiDatum] - [DatumOtpreme])

Stvara polje Trajanje, a zatim pomoću funkcija IIf i IsNull prikazuje poruku "Provjerite ne nedostaje li datum" ako polje TraženiDatum ili polje DatumOtpreme ima vrijednost null. U suprotnom prikazuje razliku između datuma.

ProdajaUšestMjeseci: Nz([ProdajaUprvomTromjesečju]) + Nz([ProdajaUdrugomTromjesečju])

Stvara polje ProdajaUšestMjeseci, a zatim prikazuje ukupan zbroj vrijednosti u poljima ProdajaUprvomTromjesečju i ProdajaUdrugomTromjesečju tako što najprije pomoću funkcije Nz sve vrijednosti null pretvori u nulu.

Vrh stranice

Izračunata polja s podupitima

Izračunato polje možete stvoriti pomoću ugniježđenog upita, koji se još naziva i podupit. Izraz u tablici u nastavku primjer je izračunatog polja nastalog iz podupita.

Izraz

Opis

Kategorija: (SELECT [NazivKategorije] FROM [Kategorije] WHERE [Proizvodi].[IDkategorije]=[Kategorije].[IDkategorije])

Stvara polje Kategorija, a zatim prikazuje NazivKategorije ako je IDkategorije iz tablice Kategorije isti kao IDkategorije iz tablice Proizvodi.

Vrh stranice

Podudaranje s vrijednosti teksta

Ogledni izrazi u ovoj tablici pokazuju kriterije koji traže podudaranje s cijelim ili djelomičnim tekstnim vrijednostima.

Polje

Izraz

Opis

Odredište

"London"

Prikazuje narudžbe poslane u London.

OdredišniGrad

"London" ili "Hedge End"

Pomoću operatora Or prikazuje narudžbe poslane u London ili Hedge End.

OdredišnaDržavaIliRegija

In("Kanada", "Velika Britanija")

Pomoću operatora In prikazuje narudžbe poslane u Kanadu ili Veliku Britaniju.

OdredišnaDržavaIliRegija

Not "SAD"

Pomoću operatora Not prikazuje narudžbe poslane u sve druge države ili regije osim SAD-a.

NazivProizvoda

Not Like "C*"

Pomoću operatora Not i zamjenskog znaka * prikazuje proizvode čiji nazivi ne počinju slovom C.

NazivTvrtke

>="N"

Prikazuje narudžbe poslane tvrtkama čini nazivi počinju slovima od N do Z.

ŠifraProizvoda

Right([ŠifraProizvoda], 2)="99"

Pomoću funkcije Right prikazuje narudžbe s vrijednostima ŠifraProizvoda koje završavaju s 99.

NazivPrimatelja

Like "S*"

Prikazuje narudžbe poslane klijentima čiji nazivi počinju slovom S.

Vrh stranice

Podudaranje s kriterijem datuma

Izrazi u tablici u nastavku pokazuju kako se datumi i povezane funkcije koriste u izrazima s kriterijima. Dodatne informacije o unosu i korištenju vrijednosti datuma potražite u članku Oblikovanje polja datuma ili vremena.

Polje

Izraz

Opis

DatumSlanja

#2/2/2017#

Prikazuje narudžbe poslane 2. veljače 2017.

DatumSlanja

Date()

Prikazuje narudžbe poslane danas.

DatumPotrebe

Between Date() And DateAdd("M"; - 3; Date())

Pomoću operatora Between...And i funkcija DateAdd i Date prikazuje potrebne narudžbe između današnjeg datuma i datuma koji nastupa tri mjeseca nakon današnjeg datuma.

DatumNarudžbe

< Date( ) - 30

Pomoću funkcije Date prikazuje narudžbe starije od 30 dana.

DatumNarudžbe

Year ([DatumNarudžbe]) = 2017.

Pomoću funkcije Year prikazuje narudžbe s datumom u 2017. godini.

DatumNarudžbe

DatePart("q", [DatumNarudžbe])=4

Pomoću funkcije DatePart prikazuje narudžbe za četvrto tromjesečje u godini.

DatumNarudžbe

DateSerial(Year ([DatumNarudžbe]), Month([DatumNarudžbe])+1, 1)-1

Pomoću funkcija DateSerial, Year i Month prikazuje narudžbe za zadnji dan svakog mjeseca.

DatumNarudžbe

Year([DatumNarudžbe])= Year(Now()) And Month([DatumNarudžbe])= Month(Now())

Pomoću funkcija Year i Month te operatora And prikazuje narudžbe za trenutnu godinu i mjesec.

DatumSlanja

Between #1/5/2017# And #1/10/2017#

Pomoću operatora Between...And prikazuje narudžbe poslane između 5. siječnja 2017. i 10. siječnja 2017.

DatumPotrebe

Between Date( ) And DateAdd("M", 3, Date( ))

Pomoću operatora Between...And prikazuje potrebne narudžbe između današnjeg datuma i datuma koji nastupa tri mjeseca nakon današnjeg datuma.

DatumRođenja

Month([DatumRođenja])=Month(Date())

Pomoću funkcija Month i Date prikazuje zaposlenike koji imaju rođendan ovog mjeseca.

Vrh stranice

Pronalaženje podataka koji nedostaju

Izrazi u tablici u nastavku rade s poljima koji sadrže potencijalno nedostajuće podatke – s onima koji možda sadrže vrijednost null ili niz nulte duljine. Vrijednost null predstavlja nepostojanje podataka. Ne predstavlja nulu ni bilo koju drugu vrijednost. Access podržava ideju o nedostajućim podacima jer je taj koncept ključan za integritet baze podataka. Podaci u praksi često nedostaju, ponekad samo privremeno (npr. cijena novog proizvoda koja još nije određena). Zato baza podataka koja modelira entitet iz prakse, kao što je tvrtka, mora imati mogućnost evidentiranja podataka kao nedostajućih. Pomoću funkcije IsNull možete utvrditi sadrži li polje ili kontrola vrijednost null, a pomoću funkcije Nz vrijednost null možete pretvoriti u nulu.

Polje

Izraz

Opis

OdredišnaRegija

je null

Prikazuje narudžbe za klijente čije polje OdredišnaRegija sadrži vrijednost null (ne sadrži nijednu vrijednost).

OdredišnaRegija

nije null

Prikazuje narudžbe za klijente čije polje OdredišnaRegija sadrži neku vrijednost.

Faks

""

Prikazuje narudžbe za klijente koji nemaju faks-uređaj, na što upućuje vrijednost niza nulte duljine u polju Faks umjesto vrijednosti null (nedostajuće vrijednosti).

Vrh stranice

Podudaranje uzoraka zapisa s operatorom Like

Operator Like nudi veliku fleksibilnost prilikom traženja podudaranja s recima koji slijede određeni uzorak jer operator Like možete koristiti sa zamjenskim znakovima i definirati uzorke na temelju kojih će Access tražiti podudaranja. Zamjenski znak * (zvjezdica), primjerice, omogućuje traženje podudaranja s nizom znakova bilo koje vrste i pojednostavnjuje pronalaženje svih naziva koji počinju određenim slovom. Na primjer, koristite izraz Like "S*" da biste pronašli sve nazive koji počinju slovom S. Dodatne informacije potražite u članku Operator Like.

Polje

Izraz

Opis

NazivPrimatelja

Like "S*"

Pronalazi sve zapise u polju NazivOdredišta koji počinju slovom S.

NazivOdredišta

Like "*Uvoz"

Pronalazi sve zapise u polju NazivOdredišta koji završavaju riječju "Uvoz".

NazivPrimatelja

Like "[A-D]*"

Pronalazi sve zapise u polju NazivOdredišta koji počinju slovom A, B, C ili D.

NazivPrimatelja

Like "*ar*"

Pronalazi sve zapise u polju NazivPrimatelja koji sadrže niz slova "ar".

NazivOdredišta

Like "Maison Dewe?"

Pronalazi sve zapise u polju NazivOdredišta koji sadrže riječ "Maison" u prvom dijelu vrijednosti i niz od pet slova u kojem su prva četiri slova "Dewe", a posljednje slovo nije poznato.

NazivOdredišta

Not Like "A*"

Pronalazi sve zapise u polju NazivPrimatelja koji ne počinju slovom A.

Vrh stranice

Podudaranje redaka sa SQL agregacijama

SQL ili domensku agregacijsku funkciju koristite kada morate selektivno zbrojiti ili prebrojiti vrijednosti ili pak izračunati njihov prosjek. Možda ćete, primjerice, htjeti prebrojiti samo vrijednosti unutar određenog raspona ili vrijednosti koje se vrednuju kao Da. U drugim ćete situacijama možda htjeti potražiti određenu vrijednost iz druge tablice da biste je mogli prikazati. U oglednim primjerima u tablici u nastavku koriste se domenske agregacijske funkcije za izvođenje izračuna na skupu vrijednosti i rezultat se koristi kao kriterij za upit.

Polje

Izraz

Opis

Vozarina

> (DStDev("[Vozarina]", "Narudžbe") + DAvg("[Vozarina]", "Narudžbe"))

Pomoću funkcija DStDev i DAvg prikazuje sve narudžbe za koje je trošak vozarine veći od prosječne vrijednosti uvećane za standardnu devijaciju troška vozarine.

Količina

> DAvg("[Količina]", "[Detalji o narudžbi]")

Pomoću funkcije DAvg prikazuje proizvode naručene u količinama većim od prosječne naručene količine.

Vrh stranice

Poudaranje polja s podupitima

Pomoću podupita, koji se naziva i ugniježđeni upit, možete izračunati vrijednost koja će se koristiti kao kriterij. Ogledni izrazi u tablici u nastavku traže podudarne retke na temelju rezultata koje je vratio podupit.

Polje

Izraz

Prikazuje

JediničnaCijena

(SELECT [JediničnaCijena] FROM [Proizvodi] WHERE [NazivProizvoda] = "Sirup od anisa")

Proizvodi s istom cijenom kao sirup od anisa.

JediničnaCijena

>(SELECT AVG([JediničnaCijena]) FROM [Proizvodi])

Proizvodi s jediničnom cijenom većom od prosječne.

Plaća

> ALL (SELECT [Plaća] FROM [Zaposlenici] WHERE ([RadnoMjesto] LIKE "*Upravitelj*") OR ([RadnoMjesto] LIKE "*Potpredsjednik*"))

Plaća svakog prodajnog predstavnika koja je veća od plaće svih zaposlenika čije je radno mjesto "Upravitelj" ili "Potpredsjednik".

UkupnaNarudžba: [JediničnaCijena] * [Količina]

> (SELECT AVG([JediničnaCijena] * [Količina]) FROM [Detalji o narudžbi])

Narudžbe s ukupnim zbrojevima većim od prosječne vrijednosti narudžbe.

Vrh stranice

Upiti s ažuriranjem

Pomoću upita s ažuriranjem možete izmijeniti podatke u jednom ili više postojećih polja u bazi podataka. Možete, primjerice, zamijeniti vrijednosti ili ih u potpunosti izbrisati. Ova tablica pokazuje neke načine korištenja izraza u upitima s ažuriranjem. Ove izraze koristite u retku Ažuriraj u rešetke dizajna upita za polje koje želite ažurirati.

Dodatne informacije o stvaranju upita s ažuriranjem potražite u članku Stvaranje i pokretanje upita s ažuriranjem.

Polje

Izraz

Rezultat

Naslov

"Prodavač"

Mijenja tekstnu vrijednost u Prodavač.

PočetakProjekta

#8/10/17#

Mijenja vrijednost datuma u 10-kol-17.

Povučeno

Da

Vrijednost Ne u polju Da/Ne mijenja u Da.

BrojDijela

"BD" & [BrojDijela]

Dodaje BD na početak svakog navedenog serijskog broja dijela.

UkupnaCijenaStavkiUretku

[JediničnaCijena] * [Količina]

Izračunava umnožak vrijednosti JediničnaCijena i Količina.

Vozarina

[Vozarina] * 1.5

Povećava trošak vozarine za 50 %.

Prodaja

DSum("[Količina] * [JediničnaCijena]","Detalji narudžbe", "[IDProizvoda]=" & [IDProizvoda])

Kada se vrijednosti IDproizvoda u trenutnoj tablici podudaraju s vrijednostima IDproizvoda u tablici Detalji o narudžbi, ažurira ukupnu prodaju na temelju umnoška vrijednosti Količina i JediničnaCijena.

PoštanskiBrojOdredišta

Right([PoštanskiBrojOdredišta], 5)

Odbacuje krajnje lijeve znakove tako da ostane pet krajnjih desnih znakova.

JediničnaCijena

Nz([JediničnaCijena])

Vrijednost null (nedefiniranu ili nepoznatu vrijednost) u polju JediničnaCijena pretvara u nulu (0).

Vrh stranice

SQL naredbe

SQL (Structured Query Language) jezik je za upite koji koristi Access. Svaki upit koji stvorite u prikazu dizajna može se izraziti i pomoću SQL-a. Da biste pogledali SQL naredbu za bilo koji upit, na izborniku Prikaz kliknite SQL prikaz. U tablici u nastavku prikazane su ogledne SQL naredbe koje koriste izraz.

SQL naredba koja koristi izraz

Rezultat

SELECT [Ime],[Prezime] FROM [Zaposlenici] WHERE [Prezime]="Vukelić"

Prikazuje vrijednosti u poljima FirstName i LastName za zaposlenike čije je prezime Vukelić.

SELECT [IDproizvoda],[NazivProizvoda] FROM [Proizvodi] WHERE [IDkategorije]=Forms![Novi proizvodi]![IDkategorije];

Prikazuje vrijednosti u poljima IDproizvoda i NazivProizvoda u tablici Proizvodi za zapise u kojima se vrijednost IDkategorije podudara s vrijednošću IDkategorije navedenom u otvorenom obrascu Novi proizvodi.

SELECT Avg([ProširenaCijena]) AS [Prosječna ProširenaCijena] FROM [Prošireni detalji o narudžbi] WHERE [ProširenaCijena]>1000;

Izračunava prosječnu proširenu cijenu za narudžbe za koje je vrijednost u polju ProširenaCijena veća od 1000 i prikazuje je u polju Prosječna proširena cijena.

SELECT [IDkategorije], Count([IDproizvoda]) AS [BrojIDovaProizvoda] FROM [Proizvodi] GROUP BY [IDkategorije] HAVING Count([IDprozivoda])>10;

U polju BrojIDovaProizvoda prikazuje ukupan broj proizvoda za kategorije s više od 10 proizvoda.

Vrh stranice

Izrazi tablice

Dva su najčešća načina korištenja izraza u tablicama dodjela zadane vrijednosti i stvaranje pravila provjere valjanosti.

Zadane vrijednosti polja

Prilikom osmišljavanja baze podataka preporučuje se da polju ili kontroli dodijelite zadanu vrijednost. Access će nakon toga koristiti zadanu vrijednost prilikom stvaranja novog zapisa koji sadrži to polje ili prilikom stvaranja objekta koji sadrži tu kontrolu. Izrazi u tablici u nastavku predstavljaju ogledne zadane vrijednosti za polje ili kontrolu. Ako je kontrola povezana s nekim poljem u tablici i ako to polje ima zadanu vrijednost, prednost ima zadana vrijednost kontrole.

Polje

Izraz

Zadana vrijednost za polje

Količina

1

1

Regija

"SDŽ"

SDŽ

Regija

"Zagrebačka županija, ZGŽ"

Zagrebačka županija, ZGŽ (Imajte na umu da vrijednost morate navesti unutar navodnika ako sadrži interpunkciju.)

Faks

""

Niz nulte duljine, koji upućuje na to da bi polje po zadanom trebalo biti prazno, a ne sadržavati vrijednost null

Datum narudžbe

Date( )

Današnji datum

KrajnjiRok

Date() + 60

Datum 60 dana nakon današnjeg

Vrh stranice

Pravila provjere valjanosti polja

Pomoću izraza možete stvoriti pravilo provjere valjanosti za polje ili kontrolu. Access nakon toga primjenjuje to pravilo prilikom unosa podataka u to polje ili kontrolu. Da biste stvorili pravilo provjere valjanosti, izmijenite svojstvo ValidationRule polja ili kontrole. Možete i postaviti svojstvo ValidationText, koje sadrži tekst koji Access prikazuje kada se prekrši pravilo provjere valjanosti. Ako ne postavite svojstvo ValidationText, Access prikazuje zadanu poruku o pogrešci.

Primjeri u tablici u nastavku pokazuju izraze za pravila provjere valjanosti za svojstvo ValidationRule i pridruženi tekst za svojstvo ValidationText.

Svojstvo ValidationRule

Svojstvo ValidationText

<> 0

Unesite vrijednost koja nije nula.

0 Or > 100

Vrijednost mora biti 0 ili veća od 100.

Like "K???"

Vrijednost mora sadržavati četiri znaka i počinjati slovom K.

< #1/1/2017#

Unesite datum prije 1. siječnja 2017.

>= #1/1/2017# And < #1/1/2008#

Datum mora biti u 2017.

Dodatne informacije o provjeri valjanosti podataka potražite u članku Stvaranje pravila za provjeru valjanosti za provjeru valjanosti podataka u polju.

Vrh stranice

Makroizrazi

U nekim ćete slučajevima u makronaredbi željeti izvesti akciju ili niz akcija ako je ispunjen određeni uvjet. Na primjer, pretpostavimo da želite da se akcija izvede samo ako je vrijednost u tekstnom okviru Brojač jednaka 10. Da biste postavili to pravilo, upotrijebit ćete izraz da biste definirali uvjet u stupcu makronaredbe Uvjet:

[Counter]=10

Kao i za svojstvo ValidationRule, izraz stupca Uvjet uvjetni je izraz. Njegov rezultat mora biti vrijednost True ili False. Akcija se izvršava samo kada se ispuni uvjet.

Savjet    Da biste programu Access naredili da privremeno zanemari akciju, kao uvjet upišite False. To može biti korisno kada pokušavate pronaći probleme u makronaredbi.

Izraz koji se koristi za izvršavanje akcije

Ako

[Grad]="Pariz"

Pariz je vrijednost u polju Grad u obrascu iz kojeg je pokrenuta makronaredba.

DCount("[IDnarudžbe]", "Narudžbe") > 35

Postoji više od 35 stavki u polju IDnarudžbe u tablici Narudžbe.

DCount("*", "[Detalji o narudžbi]", "[IDnarudžbe]=" & Forms![Narudžbe]![IDnarudžbe]) > 3

Postoji više od tri stavke u tablici Detalji o narudžbi u kojoj se polje IDnarudžbe podudara s poljem IDnarudžbe u obrascu Narudžbe.

[DatumOtpreme] Between #2-Feb-2017# And #2-Mar-2017#

Vrijednost polja DatumOtpreme u obrascu iz kojeg je pokrenuta makronaredba predstavlja datum između 2. veljače 2017. i 2. ožujka 2017.

Forms![Proizvodi]![JedinicaNaSkladištu] < 5

Vrijednost polja JedinicaNaSkladištu u obrascu Proizvodi manja je od 5.

IsNull([Ime])

Polje Ime u obrascu iz kojeg je pokrenuta naredba ima vrijednost null (nema vrijednost). Taj je izraz istovjetan izrazu [Ime] Is Null.

[DržavaIliRegija]="Velika Britanija" And Forms![UkupnaProdaja]![UkupanBrojNarudžbi] > 100

Vrijednost u polju DržavaIliRegija u obrascu iz kojeg je makronaredba pokrenuta jest Velika Britanija i vrijednost polja UkupanBrojNarudžbi u obrascu UkupnaProdaja veća je od 100.

[DržavaIliRegija] In ("Francuska", "Italija", "Španjolska") And Len([PoštanskiBroj])<>5

Vrijednost u polju DržavaIliRegija u obrascu iz kojeg je makronaredba pokrenuta jest Francuska, Italija ili Španjolska i poštanski broj nije dugačak pet znakova.

MsgBox("Želite li potvrditi promjene?",1)=1

Kliknuli ste OK u dijaloškom okviru koji prikazuje funkcija MsgBox. Ako u dijaloškom okviru kliknete Odustani, Access zanemaruje akciju.

Vrh stranice

Dodatni sadržaji

Upotreba sastavljača izraza

Uvod u izraze

Sastavljanje izraza

Vodič za sintaksu izraza

Proširite svoje vještine korištenja sustava Office
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×