Primeri izraza

Ovaj članak pruža mnoge primere izraza u programu Access. Izraz je kombinacija matematičkih ili logičkih operatora, konstanti, funkcija, polja tabele, kontrola i svojstava koja kao rezultat daje jednu vrednost. Izraze u programu Access možete da koristite za izračunavanje vrednosti, validaciju podataka i postavljanje podrazumevane vrednosti.

U ovom članku

Obrasci i izveštaji

Tabele u ovom odeljku pružaju primere izraza koji izračunavaju vrednost u kontroli koja se nalazi u obrascu ili izveštaju. Da biste napravili izračunatu kontrolu, unesite izraz u svojstvo kontrole ControlSource kontrole umesto u polje tabele ili upit.

Napomena    Možete da koristite izraze u obrascu ili izveštaju kada izvršite Isticanje podataka uslovnim oblikovanjem.

Operacije sa tekstom

Izrazi u sledećoj tabeli koriste operatore & (ampersand) i + (plus) za kombinovanje tekstualnih niski, ugrađene funkcije da bi manipulisali tekstualnim niskama ili na drugi način upravljaju tekstom kako bi napravili izračunatu kontrolu.

Izraz

Rezultat

="N/A"

Prikazuje tekst „Nije dostupno“.

=[FirstName] & " " & [LastName]

Prikazuje vrednosti koje se nalaze u poljima tabele pod imenom „Ime“ i „Prezime“. U ovom primeru operator & koristi se za kombinovanje polja „Ime“, znaka za razmak (pod navodnicima) i polja „Prezime“.

=Left([ProductName], 1)

Koristi funkciju „Left“ za prikazivanje prvog znaka vrednosti polja ili kontrole pod imenom „ImeProizvoda“.

=Right([AssetCode], 2)

Koristi funkciju „Right“ za prikazivanje poslednja 2 znaka vrednosti u polju ili kontroli pod imenom „ŠifraImovine“.

=Trim([Address])

Koristi funkciju „Trim“ za prikazivanje vrednosti kontrole „Adresa“, pri čemu uklanja sve razmake na početku ili kraju.

=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode])

Koristi funkciju IIf za prikazivanje vrednosti kontrola „Grad“ i „PoštanskiBroj“ ako je kontrola „Region“ bez vrednosti. U suprotnom, prikazuje vrednosti kontrola „Grad“, „Region“ i „PoštanskiBroj“ razdvojene razmacima.

=[City] & (" " + [Region]) & " " & [PostalCode]

Koristi operator + i prenos prazne vrednosti za prikazivanje vrednosti kontrola „Grad“ i „PoštanskiBroj“ ako je kontrola „Region“ bez vrednosti. U suprotnom, prikazuje vrednosti polja ili kontrola „Grad“, „Region“ i „PoštanskiBroj“ razdvojene razmacima.

Prenos prazne vrednosti znači da je ceo izraz bez vrednosti, ako je neka komponenta izraza bez vrednosti. Operator + podržava prenos prazne vrednosti, a operator & je ne podržava.

Vrh stranice

Zaglavlja i podnožja

Svojstva Stranica i Stranice koristite za prikazivanje ili štampanje brojeva stranica u obrascima ili izveštajima. Svojstva Stranica i Stranice dostupna su samo tokom štampanja ili pregleda pre štampanja, tako da se ne pojavljuju na listu sa svojstvima za obrazac ili izveštaj. Ta svojstva obično koristite tako što postavite okvir za tekst u odeljak zaglavlja ili podnožja obrasca ili izveštaja, a zatim koristite izraz, kao što su oni prikazani u sledećoj tabeli.

Dodatne informacije o korišćenju zaglavlja i podnožja u obrascima i izveštajima potražite u članku Umetanje brojeva stranice u obrazac ili izveštaj.

Izraz

Rezultat

=[Page]

1

="Page " & [Page]

Stranica 1

="Page " & [Page] & " of " & [Pages]

Stranica 1 od 3

=[Page] & " of " & [Pages] & " Pages"

1 od 3 stranice

=[Page] & "/" & [Pages] & " Pages"

1/3 stranice

=[Country/region] & " - " & [Page]

UK – 1

=Format([Page], "000")

001

="Printed on: " & Date()

Odštampano: 31.12.17.

Vrh stranice

Aritmetičke operacije

Izraze možete da koristite za dodavanje, oduzimanje, množenje i deljenje vrednosti u dva ili više polja ili kontrole. Izraze možete da koristite i za izvršavanje aritmetičkih operacija nad datumima. Na primer, recimo da imate polje tabele „Datum/vreme“ koje se zove „ZahtevaniDatum“. U polju ili u kontroli povezanoj sa poljem izraz =[RequiredDate] - 2 daje vrednost „datum/vreme“ koja je dva dana pre trenutnih vrednosti u polju „ZahtevaniDatum“.

Izraz

Rezultat

=[Subtotal]+[Freight]

Zbir vrednosti polja ili kontrola „Međuvrednost“ i „TroškoviPrevoza“.

=[RequiredDate]-[ShippedDate]

Interval između vrednosti datuma polja ili kontrola „ZahtevaniDatum“ i „DatumIsporuke“.

=[Price]*1.06

Proizvod vrednosti polja ili kontrole „Cena“ i broja 1,06 (dodaje 6 procenata vrednosti „Cena“).

=[Quantity]*[Price]

Proizvod vrednosti polja ili kontrola „Količina“ i „Cena“.

=[EmployeeTotal]/[CountryRegionTotal]

Količnik vrednosti polja ili kontrola „UkupanBrojZaposlenih“ i „UkupanBrojZaZemljuRegion“.

Napomena    Kada u izrazu koristite aritmetički operator (+, -, * i /), a vrednost jedne od kontrola u izrazu je prazna, rezultat celog izraza biće bez vrednosti – to se zove prenos prazne vrednosti. Ako je neki zapis u jednoj od kontrola koje koristite u izrazu bez vrednosti, prenos prazne vrednosti možete da izbegnete tako što ćete praznu vrednost konvertovati u nulu pomoću funkcije Nz – na primer, =Nz([Subtotal])+Nz([Freight]).

Vrh stranice

Vrednosti u drugim kontrolama

Ponekad vam je potrebna vrednost koja postoji na drugom mestu, kao što je polje ili kontrola u drugom obrascu ili izveštaju. Izraz možete da koristite da biste dobili vrednost iz drugog polja ili kontrole.

Sledeća tabela navodi primere izraza koje možete da koristite u izračunatim kontrolama u obrascima.

Izraz

Rezultat

=Forms![Orders]![OrderID]

Vrednost kontrole „IDPorudžbine“ u obrascu „Porudžbine“.

=Forms![Orders]![Orders Subform].Form![OrderSubtotal]

Vrednost kontrole „MeđuvrednostPorudžbine“ u podobrascu pod imenom „PodobrazacPorudžbina“ u obrascu „Porudžbine“.

=Forms![Orders]![Orders Subform]![ProductID].Column(2)

Vrednost treće kolone u polju „IDProizvoda“, okvir sa listom sa više kolona u podobrascu pod imenom „PodobrazacPorudžbina“ u obrascu „Porudžbine“. (Imajte na umu da se 0 odnosi na prvu kolonu, 1 na drugu kolonu i tako dalje.)

=Forms![Orders]![Orders Subform]![Price] * 1.06

Vrednost proizvoda kontrole „Cena“ u podobrascu pod imenom „PodobrazacPorudžbina“ u obrascu „Porudžbine“ i 1,06 (dodaje 6 procenata vrednosti kontrole „Cena“).

=Parent![OrderID]

Vrednost kontrole „IDPorudžbine“ u glavnom ili nadređenom obrascu trenutnog podobrasca.

Izrazi u sledećoj tabeli prikazuju neke načine za korišćenje izračunatih kontrola u izveštajima. Izrazi upućuju na Svojstvo izveštaja.

Izraz

Rezultat

=Report![Invoice]![OrderID]

Vrednost kontrole pod imenom „IDPorudžbine“ u izveštaju pod imenom „Faktura“.

=Report![Summary]![Summary Subreport]![SalesTotal]

Vrednost kontrole „UkupnaProdaja“ u podobrascu pod imenom „PodizveštajRezimea“ u izveštaju „Rezime“.

=Parent![OrderID]

Vrednost kontrole „IDPorudžbine“ u glavnom ili nadređenom izveštaju trenutnog podizveštaja.

Vrh stranice

Prebrojavanje, sabiranje i izračunavanje proseka vrednosti

Tip funkcije pod imenom agregatna funkcija možete da koristite za izračunavanje vrednosti za jedno ili više polja ili kontrola. Na primer, možete da izračunate ukupnu vrednost grupe za podnožje grupe u izveštaju ili međuvrednost porudžbine za stavke predmeta u obrascu. Možete da prebrojite i stavke u jednom ili više polja odnosno da izračunate prosečnu vrednost.

Izrazi u sledećoj tabeli prikazuju neke od načina na koji se koriste funkcije kao što su „Avg“, „Count“ i „Sum“.

Izraz

Opis

=Avg([Freight])

Koristi funkciju „Avg“ za prikazivanje proseka vrednosti polja tabele ili kontrole pod imenom „TroškoviPrevoza“.

=Count([OrderID])

Koristi funkciju „Count“ za prikazivanje broja zapisa u kontroli „IDPorudžbine“.

=Sum([Sales])

Koristi funkciju „Sum“ za prikazivanje zbira vrednosti kontrole „Prodaja“.

=Sum([Quantity]*[Price])

Koristi funkciju „Sum“ za prikazivanje zbira proizvoda vrednosti kontrola „Količina“ i „Cena“.

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

Prikazuje procenat prodaje, određen deljenjem vrednosti kontrole „Prodaja“ zbirom svih vrednosti kontrole „Prodaja“.

Ako podesite svojstvo „Format“ kontrole na vrednost „Procenat“, u izraz nemojte da uključite *100.

Dodatne informacije o korišćenju agregatnih funkcija i sabiranju vrednosti u polju i kolonama potražite u člancima Sabiranje podataka pomoću upita, Brojanje podataka pomoću upita, Brojanje redova na listu sa podacima i Prikaz ukupnih vrednosti kolona na listu sa podacima.

Vrh stranice

SQL agregatne funkcije

Kada treba selektivno da saberete ili prebrojite vrednosti, koristite tip funkcije pod imenom SQL ili agregatna funkcija domena. „Domen“ se sastoji iz jednog ili nekoliko polja u jednoj ili više tabela odnosno jedne ili više kontrola u jednom ili više obrazaca ili izveštaja. Na primer, vrednosti iz polja tabele možete da podudarite sa vrednostima iz kontrole obrasca.

Izraz

Opis

=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms("Suppliers")("[SupplierID]"))

Koristi funkciju DLookup za davanje vrednosti polja „ImeKontakta“ u tabeli „Dobavljači“ gde se vrednost polja „IDDobavljača“ u tabeli podudara sa vrednošću kontrole „IDDobavljača“ u obrascu „Dobavljači“.

=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms![New Suppliers]![SupplierID])

Koristi funkciju DLookup za davanje vrednosti polja „ImeKontakta“ u tabeli „Dobavljači“ gde se vrednost polja „IDDobavljača“ u tabeli podudara sa vrednošću kontrole „IDDobavljača“ u obrascu „NoviDobavljači“.

=DSum("[OrderAmount]", "[Orders]", "[CustomerID] = 'RATTC'")

Koristi funkciju DSum za davanje zbira ukupnih vrednosti u polju „KoličinaPorudžbine“ u tabeli kada je „IDKlijenta“ RATTC.

=DCount("[Retired]","[Assets]","[Retired]=Yes")

Koristi funkciju „DCount“ za davanje broja vrednosti „Da“ u polju „Otpisano“ (polje „Da/ne“) u tabeli „Imovina“.

Vrh stranice

Operacije sa datumom

Praćenje datuma i vremena je osnovna aktivnost baze podataka. Na primer, možete da izračunate koliko dana je prošlo od datuma fakture kako biste ažurirali potraživanja. Datume i vremena možete da oblikujete na brojne načine, kao što je prikazano u sledećoj tabeli.

Izraz

Opis

=Date()

Koristi funkciju „Date“ za prikazivanje trenutnog datuma u formatu mm-dd-yy, gde je mm mesec (od 1 do 12), dd je dan (od 1 do 31) i yy su poslednje dve cifre godine (od 1980 do 2099).

=Format(Now(), "ww")

Koristi funkciju „Format“ za prikazivanje broja sedmice u godini za trenutni datum, gde ww predstavlja sedmice od 1 do 53.

=DatePart("yyyy", [OrderDate])

Koristi funkciju „DatePart“ za prikazivanje četvorocifrene godine vrednosti kontrole „DatumPorudžbine“.

=DateAdd("y", -10, [PromisedDate])

Koristi funkciju „DateAdd“ za prikazivanje datuma koji je 10 dana pre vrednosti kontrole „ObećaniDatum“.

=DateDiff("d", [OrderDate], [ShippedDate])

Koristi funkciju „DateDiff“ za prikazivanje broja dana razlike između vrednosti kontrola „DatumPorudžbine“ i „DatumIsporuke“.

=[InvoiceDate] + 30

Koristi aritmetičke operacije nad datumima za izračunavanje datuma 30 dana posle datuma u polju ili kontroli „DatumFakture“.

Vrh stranice

Uslovi od samo dve vrednosti.

Primeri izraza u sledećoj tabeli koriste funkciju „IIf“ za davanje jedne od dve moguće vrednosti. Funkciji „IIf“ dajete tri argumenta: Prvi argument je izraz koji mora da daje vrednost True ili False. Drugi argument je vrednost koja se vraća ako je izraz tačan, a treći je vrednost koja se vraća ako je izraz netačan.

Izraz

Opis

=IIf([Confirmed] = "Yes", "Order Confirmed", "Order Not Confirmed")

Koristi funkciju „IIf“ (Immediate If) za prikazivanje poruke „Porudžbina je potvrđena“ ako je vrednost kontrole „Potvrđeno“ Yes. U suprotnom prikazuje poruku "Order Not Confirmed."

=IIf(IsNull([Country/region]), " ", [Country])

Koristi funkcije IIf i IsNull za prikazivanje prazne niske ako je kontrola „Zemlja/region“ bez vrednosti. U suprotnom prikazuje vrednost kontrole „Zemlja/region“.

=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode])

Koristi funkcije IIf i IsNull za prikazivanje vrednosti kontrola „Grad“ i „PoštanskiBroj“ ako je kontrola „Region“ bez vrednosti. U suprotnom, prikazuje vrednosti polja ili kontrola „Grad“, „Region“ i „PoštanskiBroj“.

=IIf(IsNull([RequiredDate]) Or IsNull([ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate])

Koristi funkcije IIf i IsNull za prikazivanje poruke „Proveri da li nedostaje datum“ ako je rezultat oduzimanja vrednosti „DatumIsporuke“ od „ZahtevaniDatum“ bez vrednosti. U suprotnom, prikazuje interval između vrednosti datuma kontrola „ZahtevaniDatum“ i „DatumIsporuke“.

Vrh stranice

Upiti i filteri

Ovaj odeljak sadrži primere izraza koje možete da koristite za pravljenje izračunatog polja u upitu ili dodavanje kriterijuma u upit. Izračunato polje je kolona u upitu koja proističe iz izraza. Na primer, možete da izračunate vrednost, kombinujete tekstualne vrednosti kao što su imena i prezimena ili da oblikujete deo datuma.

Kriterijume u upitu koristite da biste ograničili zapise sa kojima radite. Na primer, pomoću operatora Between možete da dodate datum početka i završetka i ograničite rezultate upita na porudžbine koje su isporučene između tih datuma.

Slede primeri izraza koji se koriste u upitima.

Operacije sa tekstom

Izrazi u sledećoj tabeli koriste operatore & i + za kombinovanje tekstualnih niski, koriste ugrađene funkcije da bi radili nad tekstualnim niskama ili na drugi način upravljaju tekstom kako bi napravili izračunato polje.

Izraz

Opis

FullName: [FirstName] & " " & [LastName]

Pravi polje pod imenom „PunoIme“ koje prikazuje vrednosti iz polja „Ime“ i „Prezime“ razdvojene razmakom.

Address2: [City] & " " & [Region] & " " & [PostalCode]

Pravi polje pod imenom „Adresa2“ koje prikazuje vrednosti iz polja „Grad“, „Region“ i „PoštanskiBroj“ razdvojene zarezima.

ProductInitial: Left([ProductName], 1)

Pravi polje pod imenom „InicijalProizvoda“, a zatim koristi funkciju Left za prikazivanje prvog znaka vrednosti iz polja „ImeProizvoda“ u polju „InicijalProizvoda“.

TypeCode: Right([AssetCode], 2)

Pravi polje pod imenom „TipŠifre“, a zatim koristi funkciju Right za prikazivanje poslednja dva znaka vrednosti u polju „ŠifraImovine“.

AreaCode: Mid([Phone],2,3)

Pravi polje pod imenom „PozivniBroj“, a zatim koristi funkciju Mid za prikazivanje poslednja tri znaka počev od drugog znaka vrednosti u polju „Telefon“.

ExtendedPrice: CCur([Order Details].[Unit Price]*[Quantity]*(1-[Discount])/100)*100

Daje ime izračunatom polju „ProširenaCena“ i koristi funkciju „CCur“ za izračunavanje ukupnih vrednosti stavke reda sa primenjenim popustom.

Vrh stranice

Aritmetičke operacije

Izraze možete da koristite za dodavanje, oduzimanje, množenje i deljenje vrednosti u dva ili više polja ili kontrole. Aritmetičke operacije možete da vršite i nad datumima. Na primer, recimo da imate polje „Datum/vreme“ koje se zove „ZahtevaniDatum“. Izraz =[RequiredDate] - 2 daje vrednost „Datum/vreme“ koja je dva dana pre vrednosti u polju „ZahtevaniDatum“.

Izraz

Opis

PrimeFreight: [Freight] * 1.1

Pravi polje pod imenom „OsnovniTroškoviPrevoza“, a zatim u polju prikazuje troškove prevoza uvećane za 10 procenata.

OrderAmount: [Quantity] * [UnitPrice]

Pravi polje pod imenom „KoličinaPorudžbine“, a zatim prikazuje proizvod vrednosti u poljima „Količina“ i „CenaPoJedinici“.

LeadTime: [RequiredDate] - [ShippedDate]

Pravi polje pod imenom „ProtekloVreme“, a zatim prikazuje razliku između vrednosti u poljima „ZahtevaniDatum“ i „DatumIsporuke“.

TotalStock: [UnitsInStock]+[UnitsOnOrder]

Pravi polje pod imenom „UkupneZalihe“, a zatim prikazuje zbir vrednosti iz polja „JediniceUSkladištu“ i „PoručeneJedinice“.

FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100

Pravi polje pod imenom „ProcenatTroškovaPrevoza“, a zatim prikazuje procenat troškova prevoza u svakoj međuvrednosti. Ovaj izraz koristi funkciju Sum za izračunavanje sabiranje vrednosti u polju „TroškoviPrevoza“, a zatim deli te ukupne vrednosti zbirom vrednosti u polju „Međuvrednost“.

Da biste koristili ovaj izraz, morate da konvertujete upit za izdvajanje u upit zbirova jer treba da koristite red sa Zbirom u koordinatnoj mreži dizajna i morate da podesite ćeliju Zbir za to polje na vrednost Izraz.

Dodatne informacije o pravljenju upita zbirova potražite u članku Sabiranje podataka pomoću upita.

Ako podesite svojstvo Format polja na Procenat, nemojte da uključite *100.

Dodatne informacije o korišćenju agregatnih funkcija i sabiranju vrednosti u polju i kolonama potražite u člancima Sabiranje podataka pomoću upita, Brojanje podataka pomoću upita, Brojanje redova na listu sa podacima i Prikaz ukupnih vrednosti kolona na listu sa podacima.

Vrh stranice

Operacije sa datumom

Skoro sve baze podataka skladište i prate datume i vremena. U programu Access sa datumima i vremenima radite tako što podešavate polja datuma i vremena u tabelama na tip podataka „Datum/Vreme“. Access može da izvrši aritmetička izračunavanja nad datumima. Na primer, možete da izračunate koliko dana je prošlo od datuma fakture kako biste ažurirali potraživanja.

Izraz

Opis

LagTime: DateDiff("d", [OrderDate], [ShippedDate])

Pravi polje pod imenom „VremeKašnjenja“, a zatim koristi funkciju DateDiff za prikazivanje broja dana između datuma porudžbine i isporuke.

YearHired: DatePart("yyyy",[HireDate])

Pravi polje imenom „GodinaZapošljavanja“, a zatim koristi funkciju „DatePart“ za prikazivanje godine kada je svaki zaposleni dobio posao.

MinusThirty: Date( )- 30

Pravi polje imenom „MinusTrideset“, a zatim koristi funkciju „Date“ za prikazivanje datuma 30 dana pre trenutnog datuma.

Vrh stranice

SQL agregatne funkcije

Izrazi u sledećoj tabeli koriste SQL (Structured Query Language) funkcije koje vrše agregaciju podataka ili ih sabiraju. Često vidite da se te funkcije (na primer, Sum, Count i Avg) nazivaju agregatne funkcije.

Pored agregatnih funkcija, Access pruža i agregatne funkcije „domena“ koje koristite za selektivno sabiranje ili prebrojavanje vrednosti. Na primer, možete da prebrojite samo vrednosti u okviru određenog opsega ili da potražite vrednosti iz druge tabele. Skup agregatnih funkcija domena obuhvata funkcije DSum, DCount i DAvg.

Da biste izračunali ukupne vrednosti, često ćete morati da napravite upit zbirova. Na primer, upit zbirova morate da koristite da biste rezimirali po grupi. Da biste omogućili upit zbirova iz koordinatne mreže dizajna upita, izaberite stavku Ukupne vrednosti u meniju Prikaz.

Izraz

Opis

RowCount: Count(*)

Pravi polje pod imenom „BrojRedova“, a zatim koristi funkciju Count za prebrojavanje broja zapisa u upitu, uključujući zapise sa poljima bez vrednosti (praznim poljima).

FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100

Pravi polje pod imenom „ProcenatTroškovaPrevoza“, a zatim izračunava procenat troškova prevoza u svakoj međuvrednosti tako što deli zbir vrednosti u polju „TroškoviPrevoza“ zbirom vrednosti u polju „Međuvrednost“. (Ovaj primer koristi funkciju Sum.)

Ovaj izraz morate da koristite sa upitom zbirova. Ako podesite svojstvo Format polja na Procenat, nemojte da uključite *100.

Dodatne informacije o pravljenju upita zbirova potražite u članku Sabiranje podataka pomoću upita.

AverageFreight: DAvg("[Freight]", "[Orders]")

Pravi polje pod imenom „ProsekTroškovaPrevoza“, a zatim koristi funkciju DAvg za izračunavanje prosečnih troškova prevoza za sve porudžbine kombinovane u upitu zbirova.

Vrh stranice

Polja sa podacima koji nedostaju

Izrazi koji su prikazani ovde funkcionišu sa poljima u kojima možda nedostaju informacije, kao što su ona bez vrednosti (sa nepoznatim ili nedefinisanim vrednostima). Često nailazite na prazne vrednosti, kao što je nepoznata cena za novi proizvod ili vrednost koju je saradnik zaboravio da doda u porudžbinu. Mogućnost pronalaženja i obrade praznih vrednosti može da bude najvažniji deo operacija baze podataka, a izrazi u sledećoj tabeli pokazuju neke uobičajene načine za rukovanje praznim vrednostima.

Izraz

Opis

CurrentCountryRegion: IIf(IsNull([CountryRegion]), " ", [CountryRegion])

Pravi polje pod imenom „TrenutnaZemljaRegion“, a zatim koristi funkcije IIf i IsNull za prikazivanje prazne niske u tom polju kada je polje „ZemljaRegion“ bez vrednosti. U suprotnom, prikazuje sadržaj polja „ZemljaRegion“.

LeadTime: IIf(IsNull([RequiredDate] - [ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate])

Pravi polje pod imenom „ProtekloVreme“, a zatim koristi funkcije IIf i IsNull za prikazivanje poruke „Proveri da li nedostaje datum“ ako je bilo koje od polja „ZahtevaniDatum“ ili „DatumIsporuke“ bez vrednosti. U suprotnom, prikazuje razliku između datuma.

SixMonthSales: Nz([Qtr1Sales]) + Nz([Qtr2Sales])

Pravi polje „ProdajaUŠestMeseci“, a zatim prikazuje zbir vrednosti iz polja „ProdajaUPrvomKvartalu“ i „ProdajaUDrugomKvartalu“, tako što prvo koristi funkciju Nz za konvertovanje svih praznih vrednosti u vrednost nula.

Vrh stranice

Izračunata polja pomoću podupita

Ugnežđeni upit, koji se naziva i podupit, možete da koristite da biste napravili izračunato polje. Izraz u sledećoj tabeli predstavlja jedan primer izračunatog polja koje proističe iz podupita.

Izraz

Opis

Cat: (SELECT [CategoryName] FROM [Categories] WHERE [Products].[CategoryID]=[Categories].[CategoryID])

Pravi polje pod imenom „Kategorija“, a zatim prikazuje „ImeKategorije“, ako je „IDKategorije“ iz tabele „Kategorije“ isti kao „IDKategorije“ iz tabele „Proizvodi“.

Vrh stranice

Podudaranje tekstualnih vrednosti

Uzorci izraza u ovoj tabeli pokazuju kriterijume koji traže cela ili delimična podudaranja sa tekstualnim vrednostima.

Polje

Izraz

Opis

GradOtpreme

"London"

Prikazuje porudžbine isporučene u London.

GradOtpreme

"London" Or "Hedge End"

Koristi operator Or za prikazivanje porudžbina isporučenih u London ili Hedž End.

ZemljaRegionOtpreme

In("Canada", "UK")

Koristi operator In za prikazivanje porudžbina isporučenih u Kanadu ili UK.

ZemljaRegionOtpreme

Not "USA"

Koristi operator Not za prikazivanje porudžbina isporučenih u zemlje/regione koje nisu SAD.

ProductName

Not Like "C*"

Koristi operator Not i džoker znak * za prikazivanje proizvoda čija imena ne počinju na C.

ImePreduzeća

>="N"

Prikazuje porudžbine isporučene preduzećima čija imena počinju na slova od N do Z.

ŠifraProizvoda

Right([ProductCode], 2)="99"

Koristi funkciju „Right“ za prikazivanje porudžbina sa vrednostima „ŠifraProizvoda“ koje se završavaju na 99.

ImeOtpreme

Like "S*"

Prikazuje porudžbine isporučene klijentima čija imena počinju na slovo S.

Vrh stranice

Podudaranje kriterijuma datuma

Izrazi u sledećoj tabeli pokazuju korišćenje datuma i povezanih funkcija u kriterijumima izraza. Dodatne informacije o unosu i korišćenju vrednosti datuma potražite u članku Unos vrednosti datuma ili vremena.

Polje

Izraz

Opis

DatumIsporuke

#2/2/2017#

Prikazuje porudžbine isporučene 2. februara 2017.

DatumIsporuke

Date()

Prikazuje porudžbine isporučene danas.

ZahtevaniDatum

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

Koristi operator Between...And i funkcije „DateAdd“ i „Date“ za prikazivanje porudžbina zahtevanih između tekućeg datuma i datuma koji je tri meseca u budućnosti.

DatumPorudžbine

< Date( ) - 30

Koristi funkciju „Date“ za prikazivanje porudžbina starijih od 30 dana.

OrderDate

Year([OrderDate])=2017

Koristi funkciju „Year“ za prikazivanje porudžbina sa datumima porudžbine iz 2017. godine.

OrderDate

DatePart("q", [OrderDate])=4

Koristi funkciju „DatePart“ za prikazivanje porudžbina za četvrti kalendarski kvartal.

DatumPorudžbine

DateSerial(Year ([OrderDate]), Month([OrderDate])+1, 1)-1

Koristi funkcije „DateSerial“, „Year“ i „Month“ za prikazivanje porudžbina za poslednji dan u svakom mesecu.

DatumPorudžbine

Year([OrderDate])= Year(Now()) And Month([OrderDate])= Month(Now())

Koristi funkcije „Year“ i „Month“ i operator „And“ za prikazivanje porudžbina za tekuću godinu i mesec.

DatumIsporuke

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

Koristi operator Between...And za prikazivanje porudžbina isporučenih počev od 5. januara 2017. i do 10. januara 2017.

ZahtevaniDatum

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

Koristi operator Between...And za prikazivanje porudžbina zahtevanih između tekućeg datuma i datuma koji je tri meseca u budućnosti.

DatumRođenja

Month([BirthDate])=Month(Date())

Koristi funkcije „Month“ i „Date“ za prikazivanje zaposlenih kojima je rođendan ovog meseca.

Vrh stranice

Pronalaženje podataka koji nedostaju

Izrazi u sledećoj tabeli funkcionišu sa poljima kojima možda nedostaju informacije – onima koja možda sadrže praznu vrednost ili nisku nulte dužine. Prazna vrednost predstavlja odsustvo informacija. Ona nije nula ili bilo koja druga vrednost. Access podržava tu ideju informacija koje nedostaju jer je taj koncept od suštinske važnosti za integritet baze podataka. U stvarnom svetu informacije često nedostaju, možda i samo privremeno (na primer, cena novog proizvoda o kojoj još nije odlučeno). Stoga baza podataka koja služi kao model entiteta iz stvarnog sveta, kao što je preduzeće, mora imati mogućnost da zapiše informacije kao nedostajuće. Funkciju IsNull možete da koristite za određivanje toga da li su polje ili kontrola bez vrednosti, a funkciju Nz možete da koristite za konvertovanje prazne vrednosti u nulu.

Polje

Izraz

Opis

RegionOtpreme

Is Null

Prikazuje porudžbine za klijente čije je polje „RegionOtpreme“ bez vrednosti (vrednost nedostaje).

RegionOtpreme

Is Not Null

Prikazuje porudžbine za klijente čije polje „RegionOtpreme“ sadrži vrednost.

Faks

""

Prikazuje porudžbine za klijente koji nemaju faks mašinu, označene vrednošću niske nulte dužine u polju „Faks“ umesto prazne vrednosti (koja nedostaje).

Vrh stranice

Podudaranje obrazaca zapisa pomoću operatora „Like“

Operator Like pruža veliku fleksibilnost kada pokušavate da pronađete podudaranje u redovima koji prate obrazac, zato što Like možete da koristite sa džoker znakovima i definišete obrasce za koje Access treba da pronađe podudaranja. Na primer, džoker znak * (zvezdica) podudara niz znakova bilo kog tipa i olakšava pronalaženje svih imena koja počinju na neko slovo. Na primer, izraz Like "S*" koristite da biste pronašli sva imena koja počinju na slovo S. Više informacija potražite u članku Operator „Like“.

Polje

Izraz

Opis

ImeOtpreme

Like "S*"

Pronalazi sve zapise u polju „ImeOtpreme“ koja počinju na slovo S.

ImeOtpreme

Like "*Imports"

Pronalazi sve zapise u polju „ImeOtpreme“ koji se završavaju na reč „Uvozi“.

ImeOtpreme

Like "[A-D]*"

Pronalazi sve zapise u polju „ImeOtpreme“ koji počinju na slovo A, B, C ili D.

ImeOtpreme

Like "*ar*"

Pronalazi sve zapise u polju „ImeOtpreme“ koji sadrže niz slova „ar“.

ImeOtpreme

Like "Maison Dewe?"

Pronalazi sve zapise u polju „ImeOtpreme“ koji sadrže reč „Maison“ u prvom delu vrednosti i nisku od pet slova u kojoj su prva četiri slova „Dewe“, a poslednje je nepoznato.

ImeOtpreme

Not Like "A*"

Pronalazi sve zapise u polju „ImeOtpreme“ koji ne počinju na slovo A.

Vrh stranice

Podudaranje redova pomoću SQL agregatnih funkcija

SQL ili agregatnu funkciju domena koristite kada treba selektivno da saberete, prebrojite ili izračunate prosek vrednosti. Na primer, možda želite da prebrojite samo one vrednosti koje spadaju u određeni opseg ili koje imaju rezultat „Da“. U drugim prilikama možda treba da potražite vrednost iz druge tabele kako biste mogli da je prikažete. Uzorci izraza u sledećoj tabeli koriste agregatne funkcije domena za izvršavanje izračunavanja nad skupom vrednosti i koriste rezultat kao kriterijume za upit.

Polje

Izraz

Opis

Troškovi prevoza

> (DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

Koristi funkcije DStDev i DAvg za prikazivanje svih porudžbina za koje su troškovi prevoza porasli iznad zbira srednje vrednosti i standardne devijacije za trošak prevoza.

Količina

> DAvg("[Quantity]", "[Order Details]")

Koristi funkciju „DAvg“ za prikazivanje proizvoda naručenih u količinama iznad prosečne količine porudžbine.

Vrh stranice

Podudaranje polja sa podupitima

Podupit, koji se naziva i ugnežđeni upit, koristite da biste izračunali vrednost koja će se koristiti kao kriterijum. Ovi uzorci izraza u sledećoj tabeli pronalaze podudaranja redova na osnovu rezultata dobijenog pomoću podupita.

Polje

Izraz

Prikazuje

CenaPoJedinici

(SELECT [UnitPrice] FROM [Products] WHERE [ProductName] = "Aniseed Syrup")

Proizvodi čija je cena ista kao cena sirupa od semena anisa.

CenaPoJedinici

>(SELECT AVG([UnitPrice]) FROM [Products])

Proizvodi čija je cena po jedinici veća od prosečne.

Plata

> ALL (SELECT [Salary] FROM [Employees] WHERE ([Title] LIKE "*Manager*") OR ([Title] LIKE "*Vice President*"))

Plata svakog predstavnika prodaje čija je plata viša od plate zaposlenih koji u nazivu radnog mesta imaju „Menadžer“ ili „Potpredsednik“.

UkupnaPorudžbna: [Cena po jedinici] * [Količina]

> (SELECT AVG([UnitPrice] * [Quantity]) FROM [Order Details])

Porudžbine sa ukupnim vrednostima koje su više od prosečne vrednosti porudžbine.

Vrh stranice

Upiti za ažuriranje

Upit za ažuriranje koristite da biste izmenili podatke u postojećim poljima u bazi podataka. Na primer, možete da zamenite vrednosti ili da ih potpuno izbrišete. Ova tabela pokazuje neke načine za korišćenje izraza u upitu za ažuriranje. Ove izraze koristite u redu Ažuriraj u u koordinatnoj mreži za dizajn upita za polje koje želite da ažurirate.

Dodatne informacije o pravljenju upita za ažuriranje potražite u članku Pravljenje i pokretanje upita za ažuriranje.

Polje

Izraz

Rezultat

Naslov

"Salesperson"

Menja tekstualnu vrednost u „Prodavac“.

PočetakProjekta

#8/10/17#

Menja vrednost datuma u „10. avgust 2017.“.

Otpisano

Yes

U polju tipa „Da/Ne“ menja vrednost „Ne“ u vrednost „Da“.

BrojDela

"PN" & [PartNumber]

Dodaje „BD“ na početak svakog navedenog broja dela.

UkupnaVrednostStavkePredmeta

[UnitPrice] * [Quantity]

Izračunava stavke „CenaPoJedinici“ i „Količina“ za proizvod.

Troškovi prevoza

[Freight] * 1.5

Povećava troškove prevoza za 50 procenata.

Prodaja

DSum("[Quantity] * [UnitPrice]", "Order Details", "[ProductID]=" & [ProductID])

Ažurira ukupne vrednosti prodaje na osnovu stavki „Količina“ i „CenaPoJedinici“ tamo gde se vrednosti stavke „IDProizvoda“ u trenutnoj tabeli podudaraju sa vrednostima stavke „IDProizvoda“ u tabeli „Detalji porudžbine“.

PoštanskiBrojZaOtpremu

Right([ShipPostalCode], 5)

Odseca krajnje leve znakove i ostavlja pet krajnjih desnih znakova.

CenaPoJedinici

Nz([UnitPrice])

Menja praznu vrednost (nepoznatu ili nedefinisanu vrednost) u vrednost nula (0) u polju „CenaPoJedinici“.

Vrh stranice

SQL izjave

Structured Query Language ili SQL jeste jezik upita koji Access koristi. Svaki upit koji napravite u prikazu dizajna može da se izrazi i pomoću SQL-a. Da biste videli SQL izraz za bilo koji upit, izaberite stavku SQL prikaz u meniju Prikaz. Sledeća tabela prikazuje uzorak SQL izraza koji koriste izraz.

SQL izraz koji koristi izraz

Rezultat

SELECT [FirstName],[LastName] FROM [Employees] WHERE [LastName]="Danseglio";

Prikazuje vrednosti iz polja „Ime“ i „Prezime“ za zaposlene koji se prezivaju Jovanović.

SELECT [ProductID],[ProductName] FROM [Products] WHERE [CategoryID]=Forms![New Products]![CategoryID];

Prikazuje vrednosti u poljima „IDProizvoda“ i „ImeProizvoda“ u tabeli „Proizvodi“ za zapise u kojima se vrednost stavke „IDKategorije“ podudara sa vrednošću stavke „IDKategorije“ navedenom u otvorenom obrascu „Novi proizvodi“.

SELECT Avg([ExtendedPrice]) AS [Average Extended Price] FROM [Order Details Extended] WHERE [ExtendedPrice]>1000;

Izračunava prosečnu ukupnu cenu za porudžbine za koje je vrednost u polju „UkupnaCena“ veća od 1000 i prikazuje je je u polju pod imenom „Prosečna ukupna cena“.

SELECT [CategoryID], Count([ProductID]) AS [CountOfProductID] FROM [Products] GROUP BY [CategoryID] HAVING Count([ProductID])>10;

U polju pod imenom „BrojIDovaProizvoda“ prikazuje ukupan broj proizvoda za kategorije sa više od 10 proizvoda.

Vrh stranice

Izrazi tabele

Dva najčešća načina za korišćenje izraza u tabelama je dodeljivanje podrazumevane vrednosti i kreiranje pravila za validaciju.

Podrazumevane vrednosti polja

Prilikom dizajniranja baze podataka možda ćete želeti da dodelite podrazumevanu vrednost polju ili kontroli. U tom slučaju Access pruža podrazumevanu vrednost kada se napravi novi zapis koji sadrži polje ili kada se napravi objekat koji sadrži kontrolu. Izrazi u sledećoj tabeli predstavljaju uzorke podrazumevanih vrednosti za polje ili kontrolu. Ako je kontrola povezana sa poljem u tabeli, a polje ima podrazumevanu vrednost, podrazumevana vrednost kontrole ima prednost.

Polje

Izraz

Podrazumevana vrednost polja

Količina

1

1

Region

"MT"

MT

Region

"New York, N.Y."

Njujork, Njujork (Imajte na umu da vrednost morate da stavite pod navodnike ako sadrži znakove interpunkcije.)

Faks

""

Niska nulte dužine koja upućuje na to da ovo polje podrazumevano treba da bude prazno, a ne bez vrednosti.

Datum porudžbine

Date( )

Današnji datum

KrajnjiRok

Date() + 60

Datum 60 dana posle današnjeg

Vrh stranice

Pravila za validaciju polja

Pravilo za validaciju za polje ili kontrolu možete da napravite pomoću izraza. Access zatim može da nametne pravilo kada se podaci unose u polje ili kontrolu. Da biste napravili pravilo za validaciju, menjate svojstvo PraviloZaValidaciju polja ili kontrole. Trebalo bi da razmislite i o tome da podesite svojstvo TekstValidacije koje sadrži tekst koji Access prikazuje kada se prekrši pravilo za validaciju. Ako ne podesite svojstvo TekstValidacije, Access prikazuje podrazumevanu poruku o grešci.

Primeri u sledećoj tabeli pokazuju izraze pravila za validaciju za svojstvo PraviloZaValidaciju i povezani tekst za svojstvo TekstValidacije.

Svojstvo ValidationRule

Svojstvo ValidationText

<> 0

Unesite vrednost koja nije nula.

0 Or > 100

Vrednost mora da bude 0 ili veća od 100.

Like "K???"

Vrednost mora da ima četiri znaka i da počinje na slovo K.

< #1/1/2017#

Unesite datum pre 1.1.2017. godine.

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

Datum mora biti iz 2017. godine.

Dodatne informacije o proveri valjanosti podataka potražite u članku Pravljenje pravila za validaciju za proveru valjanosti podataka u polju.

Vrh stranice

Izrazi makroa

U nekim slučajevima, možda želite da izvršite neku radnju ili grupu radnji u makrou samo ako je ispunjen neki uslov. Na primer, pretpostavimo da želite da se radnja pokreće samo kada je vrednost u okviru za tekst „Brojač“ jednaka broju 10. Koristite izraz da biste definisali uslov u koloni makroa Uslov:

[Counter]=10

Kao i svojstvo ValidationRule i izraz kolone Uslov predstavlja uslovni izraz. On mora da ima vrednost True ili False. Radnja se izvršava samo kada je uslov ispunjen.

Savet    Da biste nametnuli programu Access da privremeno zanemari radnju, otkucajte False kao uslov. Ovo može da bude korisno kada pokušavate da pronađete probleme sa makroom.

Koristite ovaj izraz da biste izvršili radnju

If

[City]="Paris"

„Pariz“ je vrednost stavke „Grad“ u polju u obrascu iz kog je pokrenut makro.

DCount("[OrderID]", "Orders") > 35

Postoji više od 35 unosa u polju „IDPorudžbine“ u tabeli „Porudžbine“.

DCount("*", "[Order Details]", "[OrderID]=" & Forms![Orders]![OrderID]) > 3

Postoji više od tri unosa u tabeli „Detalji porudžbine“ za koje se polje „IDPorudžbine“ u tabeli podudara sa poljem „IDPorudžbine“ u obrascu.

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

Vrednost polja „DatumIsporuke“ u obrascu iz kog je pokrenut makro nije pre 2. februara 2017. i posle 2. marta 2017.

Forms![Products]![UnitsInStock] < 5

Vrednost polja „JediniceUSkladištu“ u obrascu „Proizvodi“ manja je od 5.

IsNull([FirstName])

Stavka „Ime“ u obrascu iz kog je pokrenut makro jeste bez vrednosti (nema vrednost). Ovaj izraz je isti kao [Ime] Is Null.

[CountryRegion]="UK" And Forms![SalesTotals]![TotalOrds] > 100

Vrednost u polju „ZemljaRegion“ u obrascu iz kog je pokrenut makro jeste „UK“, a vrednost polja „UkupnePorudžbine“ u obrascu „UkupnaProdaja“ veća je od 100.

[CountryRegion] In ("France", "Italy", "Spain") And Len([PostalCode])<>5

Vrednost u polju „ZemljaRegion“ u obrascu iz kog je pokrenut makro jeste „Francuska“, „Italija“ ili „Španija“, a poštanski broj nije dug 5 znakova.

MsgBox("Confirm changes?",1)=1

Kliknuli ste na dugme U redu u dijalogu koji prikazuje funkcija MsgBox. Ako u dijalogu kliknete na dugme Otkaži, Access zanemaruje radnju.

Vrh stranice

Takođe pogledajte

Koristite alatku „Izrada izraza“

Uvod u izraze

Kreiranje izraza

Vodič za sintaksu izraza

Razvijte Office veštine
Istražite obuku
Prvi nabavite nove funkcije
Pridružite se Office Insider korisnicima

Da li su vam ove informacije koristile?

Hvala vam na povratnim informacijama!

Hvala za povratne informacije! Zvuči da će biti od pomoći ako vas povežemo sa našim agentima Office podrške.

×