Uvod u Access SQL

Kada želite da preuzmete podatke iz baze podataka, možete zatražiti podatke koristeći Structured Query Language ili SQL. SQL je računarski jezik koji je sličan engleskom jeziku koji razumeju programi baze podataka. Poznavanje jezika SQL je važno zato što svaki upit u programu Microsoft Access koristi SQL. Razumevanje funkcionisanja jezika SQL može pomoći da kreirate bolje upite i može vam olakšati rešavanje upita kada ne vraća željene rezultate.

Napomena : Nije moguće urediti SQL za veb upit.

Ovaj članak sadrži:

Šta je to SQL?

Osnovne SQL odredbe: SELECT, FROM i WHERE

Sortiranje rezultata: ORDER BY

Rad sa rezimiranim podacima: GROUP BY i HAVING

Kombinovanje rezultata upita: UNION

Više informacija o odredbi SELECT

Više informacija o odredbi FROM

Više informacija o odredbi WHERE

Šta je to SQL?

SQL je računarski jezik za rad sa skupovima činjenica i relacijama između njih. Programi relacionih baza podataka, kao što je Access, koriste SQL za rad sa podacima. Poput mnogih računarskih jezika, SQL je međunarodni standard koji prepoznaju tela za standarde kao što su ISO i ANSI.

Možete da koristite SQL da biste opisali skupove podataka koji vam mogu pomoći da odgovorite na pitanja. Kada koristite SQL, morate da koristite ispravnu sintaksu. Sintaksa je skup pravila po kojima se elementi jezika ispravno kombinuju. SQL sintaksa je zasnovana na engleskoj sintaksi i koristi veliki broj istih elemenata kao što je Visual Basic for Applications (VBA) sintaksa.

Na primer, jednostavan SQL izraz koji preuzima listu prezimena kontakata čije je ime Biljana može da izgleda ovako:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

Napomena : SQL se ne koristi samo za upravljanje podacima, već i za kreiranje i promene dizajna objekata baze podataka, kao što su tabele. Deo SQL jezika koji se koristi za kreiranje i menjanje objekata baze podataka naziva se jezikom za definisanje podataka (DDL). Ova tema ne pokriva DDL. Više informacija potražite u članku Kreiranje ili izmena tabela ili indeksa pomoću upita za definisanje podataka.

SELECT izrazi

Da biste opisali skup podataka koristeći SQL, možete da napišete SELECT izraz. SELECT izraz sadrži potpun opis za skup podataka koji želite da dobijete iz baze podataka. Ovo uključuje sledeće:

  • Tabele koje sadrže podatke.

  • Kako su povezani podaci iz različitih izvora.

  • Koja polja ili izračunavanja će dati podatke.

  • Kriterijumi koji podaci moraju da ispunjavaju da bi bili uključeni.

  • Da li se rezultati sortiraju i na koji način.

SQL odredbe

Kao i rečenica, SQL izraz ima odredbe. Svaka odredba izvršava funkciju za SQL izraz. Neke odredbe su neophodne u SELECT izrazu. Sledeća tabela navodi najčešće SQL odredbe.

SQL odredba

Šta radi

Potrebno

SELECT

Popisuje polja sa podacima koji se traže.

Da

FROM

Popisuje tabele koje sadrže polja popisana u odredbi SELECT.

Da

WHERE

Navodi kriterijume polja koje zapisi moraju da ispune da bi bili uključeni u rezultate.

Ne

ORDER BY

Zadaje način sortiranja rezultata.

Ne

GROUP BY

U SQL izrazu koji sadrži agregatne funkcije, popisuje polja koja nisu rezimirana u instrukciji SELECT.

Samo ako postoje takva polja.

HAVING

U SQL instrukciji koja sadrži agregatne funkcije, navodi uslove koji se primenjuju na polja rezimirana u instrukciji SELECT.

Ne

SQL termini

Svaka SQL odredba se sastoji od uslova – što se može uporediti sa delovima govora. Sledeća tabela navodi tipove SQL termina.

SQL termin

Usklađeni deo govora

Definicija

Primer

identifikator

imenica

Ime koje koristite za identifikovanje objekta baze podataka, kao što je ime polja.

Klijenti.[broj telefona]

operator

glagol ili prilog

Ključna reč koja predstavlja radnju ili menja radnju.

AS

konstanta

imenica

Vrednost koja se ne menja, kao što je broj ili NULL.

42

izraz

pridev

Kombinacija identifikatora, operatora, konstanti i funkcija koja daje jednu vrednost.

>= Proizvodi.[Jedinična cena]

Vrh stranice

Osnovne SQL odredbe: SELECT, FROM i WHERE

SQL izraz uzima opšti obrazac:

SELECT field_1
FROM table_1
WHERE criterion_1
;

Napomene : 

  • Access zanemaruje prelome redova u SQL izrazu. Međutim, razmislite o korišćenju reda za svaku odredbu da biste poboljšali čitljivost SQL izraza za sebe i druge.

  • Svaki SELECT izraz uvek se završava tačkom i zarezom (;). Tačka i zarez mogu da se pojave na kraju zadnje odredbe ili u posebnom redu na kraju SQL izraza.

Primer u programu Access

Sledeće ilustruje kako može da izgleda SQL izraz za jednostavan SELECT upit u programu Access:

Kartica SQL objekta prikazuje instrukciju SELECT

1. Odredba SELECT

2. Odredba FROM

3. Odredba WHERE

Ovaj primer SQL izraza glasi „Izaberi podatke koji su uskladišteni u polja po imenu „Adresa e-pošte“ i „Preduzeće“ iz tabele pod imenom „Kontakti“, posebno one zapise u kojima je u polju „Grad“ vrednost „Subotica“.

Hajde da pogledamo primer, jedna po jedna odredba, da bismo videli kako funkcioniše SQL sintaksa.

Odredba SELECT

SELECT [E-mail Address], Company

Ovo je SELECT odredba. Sastoji se od operatora (SELECT) iza kojeg slede dva identifikatora ([adresa e-pošte] i preduzeće).

Ako identifikator sadrži razmake ili specijalne znakove (kao što je „adresa e-pošte“), moraju se nalaziti u uglastim zagradama.

Odredba SELECT ne mora da saopšti koje tabele sadrže polja i ne može da navede nijedan uslov koji podaci moraju ispunjvati da bi bili uključeni.

Odredba SELECT se uvek pojavljuje ispred odredbe FROM u SELECT izrazu.

Odredba FROM

FROM Contacts

Ovo je odredba FROM. Sastoji se od operatora (FROM) iza kojeg sledi identifikator (Kontakti).

Odredba FROM ne navodi listu polja za izbor.

Odredba WHERE

WHERE City="Seattle"

Ovo je odredba WHERE. Sastoji se od operatora (WHERE) iza kog sledi izraz (Grad = „Subotica”).

Napomena : Za razliku od odredbi SELECT i FROM, odredba WHERE nije neophodan element odredbe SELECT.

Možete da izvršite mnoge radnje koje vam SQL omogućava da uradite pomoću odredbi SELECT, FROM i WHERE. Više informacija o tome kako koristite ove odredbe nalazi se u ovim odeljcima na kraju ovog članka:

Više informacija o odredbi SELECT

Više informacija o odredbi FROM

Više informacija o odredbi WHERE

Sortiranje rezultata: ORDER BY

Kao i Microsoft Office Excel, Access vam omogućava da sortirate rezultate upita u listu sa podacima. U upiti možete da navedete kako želite da sortirate rezultate kada se upit pokrene, koristeći odredbu ORDER BY. Ako koristite odredbu ORDER BY, to je zadnja odredba u SQL izrazu.

Odredba ORDER BY sadrži listu polja koja želite da koristite za sortiranje, u istom redosledu koji želite da primenite operacije sortiranja.

Na primer, pretpostavimo da želite da rezultati budu sortirani po vrednosti polja „Preduzeće“ opadajućim redosledom i  – ako postoje zapisi sa istom vrednošću za „Preduzeće“ – sortirani po vrednostima u polju „Adresa e-pošte“ rastućim redosledom. Idredba ORDER BY bi izgledala na sledeći način:

ORDER BY Company DESC, [E-mail Address]

Napomena : Access podrazumevano sortira vrednosti po rastućem redosledu (A-Z, od najmanjeg ka najvećem). Koristite DESC ključnu reč da biste sortirali vrednosti opadajućim redosledom.

Više informacija o odredbi ORDER BY potražite u temi Odredba ORDER BY.

Vrh stranice

Rad sa rezimiranim podacima: GROUP BY i HAVING

Ponekad želite da radite sa rezimiranim podacima, kao što je ukupna prodaja u mesecu ili najskuplji artikli na zalihama. Da biste to uradili, primenite funkcija zbira na polje u odredbi SELECT. Na primer, ako želite da upit prikaže broj adresa e-pošte navedenih za svako preduzeće, odredba SELECT može izgledati na sledeći način:

SELECT COUNT([E-mail Address]), Company

Agregatne funkcije koje možete da koristite zavise od tipa podataka koji je u polju ili izraza koji želite da koristite. Više informacija o dostupnim agregatnim funkcijama potražite u članku SQL agregatne funkcije.

Navođenje polja koja nisu korišćena u agregatnoj funkciji: Odredba GROUP BY

Kada koristite agregatne funkcije, obično morate da kreirate i odredbu GROUP BY. GROUP BY odredba navodi sva polja na koje se ne primenjuju agregatne funkcije. Ako primenite agregatne funkcije na sva polja u upitu, ne morate da kreirate odredbu GROUP BY.

Odredba GROUP BY sledi neposredno odredbu WHERE ili FROM ako ne postoji odredba WHERE. Odredba GROUP BY navodi polja onako kako se pojavljuju u odredbi SELECT.

Na primer, nastavljajući prethodni primer, ako odredba SELECT primenjuje agregatnu funkciju na [adresa e-pošte] ali ne i na preduzeće, odredba GROUP BY bi trebalo ovako da izgleda:

GROUP BY Company

Više informacija o odredbi GROUP BY potražite u temi Odredba GROUP BY.

Ograničavanje agregatnih vrednosti koristeći kriterijume grupe: Odredba HAVING

Ako želite da koristite kriterijume da biste ograničili rezultate, ali se polje na koje želite da primenite kriterijume koristi u agregatnoj funkciji, ne možete da koristite odredbu WHERE. Umesto toga koristite odredbu HAVING. Odredba HAVING funkcioniše kao odredba WHERE, ali se koristi za agregirane podatke.

Na primer, pretpostavimo da koristite funkciju AVG (koji se izračunava prosečnu vrednost) sa na prvo polje u odredbi SELECT:

SELECT COUNT([E-mail Address]), Company

Ako želite da upit ograniči rezultate na osnovu vrednosti funkcije COUNT, ne možete da koristite kriterijume za to polje u odredbi WHERE. Umesto toga, stavite kriterijume u odredbu HAVING. Na primer, ako samo želite da upit vraća redove ako postoji više adresa e -pošte koje su povezane sa tim preduzećem, odredba HAVING može izgledati ovako:

HAVING COUNT([E-mail Address])>1

Napomena : Upit može da ima odredbu WHERE i odredbu HAVING – kriterijumi za polja koja se ne koriste u agregatnoj funkciju idu u odredbu WHERE, a kriterijumi za polja koja se koriste uz agregatne funkcije idu u odredbu HAVING.

Više informacija o odredbi HAVING potražite u temi Odredba HAVING.

Vrh stranice

Kombinovanje rezultata upita: UNION

Kada želite da pregledate sve podatke koje je nekoliko sličnih upita za izdvajanje vratilo kao kombinovani skup, možete da koristite operator UNION.

Operator UNION vam omogućava da kombinujete dva SELECT izraza u jedan. SELECT izrazi koje kombinujete moraju da imaju isti broj polja za izlaz, istim redosledom i sa istim ili kompatibilnim tipovima podataka. Kada pokrenete upit, podaci iz svakog skupa odgovarajućih polja kombinuju se u jedno polje za izlaz da bi svaki izlaz upita imao isti broj polja kao svaki od izraza za izdvajanje.

Napomena : Za svrhe upita za združivanje, tipovi podataka „Broj“ i „Tekst“ su kompatibilni.

Kada koristite operator UNION, možete navesti da li rezultati upita treba da sadrže duplirane redove, ako postoje, koristeći ključnu reč ALL.

Osnovna SQL sintaksa za upit za združivanje koja kombinuje dva SELECT izraza izgleda ovako:

SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

Na primer, zamislite da imate tabelu pod imenom „Proizvodi“ i drugu tabelu pod imenom „Usluge“. Obe tabele imaju polja koja sadrže ime proizvoda ili usluge, cenu, dostupnost garancije i jemstva i informacije o tome da li vi ekskluzivno pružate proizvod ili uslugu. Iako tabela „Proizvodi“ skladišti informacije o garanciji, a tabela „Usluge“ skladišti informacije o jemstvu, osnovne informacije su iste (da li određeni proizvod ili usluga uključuju garantovani kvalitet). Možete koristiti upit za združivanje poput sledećeg da biste kombinovali četiri polja iz dve tabele:

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

Više informacija o tome kako da kombinujete SELECT izraze pomoću operatora UNION, potražite u članku Kombinovanje rezultata nekoliko upita za izdvajanje pomoću upita za združivanje.

Vrh stranice

Više informacija o odredbi SELECT

U SELECT izrazu, odredba SELECT navodi polja koja sadrže podatke koje želite da koristite.

Identifikatore stavite u uglaste zagrade

Možete da koristite uglaste zagrade da biste stavili ime polja u odredbu SELECT. Ako ime ne sadrži nijedan razmak ili specijalni znak (kao što su znaci interpunkcije), uglaste zagrade su opcionalne. Ako ime sadrži razmake ili specijalne znakove, morate da koristite zagrade.

Savet : Imena koja sadrže razmake su lakša za čitanje i mogu uštedeti vreme kada dizajnirate obrasce i izveštaje, ali će možda izgledati morati više da kucate prilikom pisanja SQL izraza. Trebalo bi da razmotrite ovu činjenicu kada imenujete objekte u bazi podataka.

Ako vaš SQL izraz ima dva ili više polja sa istim imenom, morate da dodate ime izvora podataka za svako polje u ime polja u odredbi SELECT. Možete da koristite isto ime za izvor podataka koji koristite u odredbi FROM.

Izbor svih polja

Kada želite da uključite sva polja iz izvora podataka, ili možete da navedena sva polja pojedinačno u odredbi SELECT ili možete da koristite džoker znak zvezdicu (*). Kada koristite zvezdicu, Access određuje kada se upit pokreće koja polja izvor podataka sadrži i uključuje sva ta polja u upit. To pomaže da se uverite da upit ostaje ažuran ako se nova polja dodaju u izvor podataka.

Možete da koristite zvezdicu sa više izvora podataka u SQL izrazu. Ako koristite zvezdicu i postoji više izvora podataka, morate da uključite ime izvora podataka zajedno sa zvezdicom tako da Access može da utvrdi koja polja da uključi iz izvora podataka.

Na primer, pretpostavimo da želite da izaberete sva polja iz tabele „Porudžbine“, ali samo adresu e-pošte iz tabele „Kontakti“. Odredba SELECT bi izgledala ovako:

SELECT Orders.*, Contacts.[E-mail Address]

Napomena : Obratite pažnju prilikom korišćenja zvezdice. Ako kasnije dodate nova polja u izvor podataka, a niste to planirali, rezultati upita možda ne ispadnu onako kako želite.

Izbor različitih vrednosti

Ako znate da će izraz izabrati suvišne podatke, a radije biste radije da vidite samo različite vrednosti, možete da koristite ključnu reč DISTINCT u odredbi SELECT. Na primer, pretpostavimo da vaši klijenti predstavljaju nekoliko različitih interesovanja, od kojih neki koriste isti telefonski broj. Ako želite da se uverite da svaki broj telefona samo jednom, odredba SELECT pojavljuje se na sledeći način:

SELECT DISTINCT [txtCustomerPhone]

Korišćenje zamenska imena za polja ili izraze: ključna reč AS

Možete da promenite oznaku koja se prikazuje za bilo koje polje u prikazu lista sa podacima pomoću ključne reči AS i pseudonima polja u odredbi SELECT. Pseudonim polja je ime koje dodeljujete polju u upitu da biste olakšali čitanje rezultata. Na primer, ako želite da izaberete podatke iz polja koje se zove txtCustPhone, a polje sadrži brojeve telefona klijenata, možete da poboljšate čitljivost rezultata tako što ćete koristiti pseudonim polja u SELECT izrazu na sledeći način:

SELECT [txtCustPhone] AS [Customer Phone]

Napomena : Morate da koristite pseudonim polja kada koristite izraz u odredbi SELECT.

Biranje pomoću izraza

Ponekad ćete želeti da pogledate izračunavanja na osnovu podataka ili preuzmete samo deo podataka polja. Na primer, pretpostavimo da želite da se vratite u godinu kada je klijent rođen, na osnovu podataka u polju „Datum rođenja“ u bazi podataka. Odredba SELECT bi izgledala ovako:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

Ovaj izraz sastoji se od funkcije DatePart i dva argumenta – „yyyy” (konstanta) i [DatumRođenja] (identifikator).

Možete da koristite svaki važeći izraz kao polje ukoliko izraz otprema jednu vrednost kada je data vrednost jednog unosa.

Vrh stranice

Više informacija o odredbi FROM

U SELECT izrazu, odredba FROM navodi tabele ili upite koji sadrže podatke koje će koristiti odredba SELECT.

Pretpostavimo da želite da saznate broj telefona određenog klijenta. Pod pretpostavkom da se tabela koja sadrži polje koje skladišti ove podatke naziva tblCustomer, odredba FROM će izgledati na sledeći način:

FROM tblCustomer

Identifikatore stavite u uglaste zagrade

Ime možete da stavite u uglaste zagrade. Ako ime ne sadrži nijedan razmak ili specijalni znak (kao što su znaci interpunkcije), uglaste zagrade su opcionalne. Ako ime sadrži razmake ili specijalne znakove, morate da koristite zagrade.

Savet :  Imena koja sadrže razmake su lakša za čitanje i mogu uštedeti vreme kada dizajnirate obrasce i izveštaje, ali će možda izgledati morati više da kucate prilikom pisanja SQL izraza. Trebalo bi da razmotrite ovu činjenicu kada imenujete objekte u bazi podataka.

Korišćenje zamenskih imena za izvore podataka

Možete da koristite drugo ime da biste uputili na izvor podataka u SELECT izrazu pomoću pseudonima tabele u odredbi FROM. Pseudonim tabele je ime koje dodeljujete izvoru podataka u upitu kada koristite izraz kao izvor podataka ili da biste olakšali kucanje i čitanje SQL izraza. Ovo može biti posebno korisno ako je ime izvora podataka dugačko ili teško za kucanje, naročito kada postoji više polja sa istim imenom iz različitih tabela.

Na primer, ako želite da izaberete podatke iz dva polja, oba imenovana ID-a, od kojih jedno potiče iz tabele tblCustomer, a drugo iz tabele tblOrder, odredba SELECT može izgledati ovako:

SELECT [tblCustomer].[ID], [tblOrder].[ID]

Pomoću pseudonima tabele u odredbi FROM možete da olakšate kucanje upita. Odredba FROM, sa pseudonima tabele može da izgleda ovako:

FROM [tblCustomer] AS [C], [tblOrder] AS [O]

Te pseudonime tabela zatim možete da koristite u odredbi SELECT na sledeći način:

SELECT [C].[ID], [O].[ID]

Napomena : Kada koristite pseudonim tabele, možete da uputite na izvor podataka u SQL izrazu pomoću pseudonima ili punog imena izvora podataka.

Pridruživanje povezanih podataka

Kada vam je potreban način za kombinovanje zapisa iz dva izvora podataka u jedan zapis u rezultatu upita, možete da izvršite pridruživanje. Pridruživanje je SQL operacija koja navodi kako su dva izvora podataka povezana i da li podaci iz jednog izvora treba da bude uključeni ako ne postoje odgovarajući podaci iz drugog izvora.

Da biste kombinovali informacije iz dva izvora podataka, možete da izvršite operaciju pridruživanja na polju koje im je zajedničko. Kada se vrednosti koje se skladište u ovom polju podudaraju, podaci iz zapisa kombinuju se u rezultatima.

Pored kombinovanja podataka, možete takođe koristiti spajanje da biste naveli da li treba uključiti zapise iz jedne od tabela ako u povezanoj tabeli nema odgovarajućeg zapisa.

Na primer, pretpostavimo da želite da koristite podatke iz dve tabele u upitu: tblCustomer i tblOrder. Obe tabele imaju polje, ID klijenta, koji identifikuje klijenta. Svaki zapis iz tabele tblCustomer možda ima neke odgovarajuće zapise u tabeli tblOrder i odgovarajuće vrednosti se mogu utvrditi pomoću vrednosti u polju „ID klijenta“.

Ako želite da spojite tabele tako da upit kombinuje zapise iz tabela, isključujući zapise iz jedne od tabela ako nema odgovarajućeg zapisa u drugoj tabeli, odredba FROM možda izgledati ovako (prelom reda je ovde dodati radi čitljivosti):

FROM [tblCustomer] INNER JOIN [tblOrder]
ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

U programu Microsoft Office Access, spajanja se pojavljuju u odredbi FROM izraza SELECT. Postoje dva tipa spajanja: unutrašnja i spoljašnja spajanja. Sledeći odeljci objašnjavaju ova dva tipa spajanja.

Unutrašnja spajanja

Unutrašnja spajanja su najčešći tip spajanja. Kada pokrenete upit sa unutrašnjim spajanjem, samo zapisi koji su obuhvaćeni rezultatima upita su oni zapisi u kojima zajednička vrednost postoji u obe pridružene tabele.

Unutrašnje spajanje ima sledeću sintaksu (prelom reda je ovde dodat zbog čitljivosti):

FROM table1 INNER JOIN table2
ON table1.field1 compopr table2.field2

Sledeća tabela opisuje različite delove operacije INNER JOIN.

Deo

Opis

tabela1, tabela2

Imena tabela iz kojih potiču zapisi za kombinovanje.

polje1, polje2

Imena polja koja su spojena. Ako ona nisu numerička, polja moraju imati isti tip podatka i moraju da sadrže istu vrstu podataka, ali ne moraju imati isto ime.

reloper

Bilo koji relacioni operator za upoređivanje: "=," "<," ">," "<=," ">=," ili "<>."

Spoljna spajanja

Spoljna spajanja su slična unutrašnjim spajanjima zato što oni govore upitu kako da kombinuje podatke iz dva izvora. Oni se razlikuju jer navode i da li treba uključiti podatke kada ne postoje zajedničke vrednosti. Spoljna spajanja su usmerena: možete da navedete da li želite da uključite sve zapise iz prvog izvora podataka navedenom u spajanju (naziva se levo spajanje) ili da uključite sve zapise iz drugog izvora podataka u spajanju (naziva se desno spajanje).

Spoljno spajanje ima sledeću sintaksu:

FROM tabela1 [ LEFT | RIGHT ] JOIN tabela2
ON table1.field1compopr table2.field2

Sledeća tabela opisuje različite delove operacija LEFT JOIN i RIGHT JOIN.

Deo

Opis

tabela1, tabela2

Imena tabela iz kojih potiču zapisi za kombinovanje.

polje1, polje2

Imena polja koja su spojena. Polja moraju biti istog tip podatka i sadržati istu vrstu podataka, ali ne moraju imati isto ime.

relacionioper

Bilo koji relacioni operator za upoređivanje: "=," "<," ">," "<=," ">=," ili "<>."

Više informacija o spajanjima potražite u članku Spajanje tabela i upita.

Vrh stranice

Više informacija o odredbi WHERE

Kada želite da koristite podatke da biste ograničili broj zapisa koji se vraćaju u upitu, koristite upit kriterijum u odredbi WHERE izraza SELECT. Kriterijum upita je sličan formuli – to je niska koja može da se sastoji od referenci polja, operatora i konstanti. Kriterijumi upita su vrsta izraz.

Sledeće tabele sadrže neke probne kriterijume i objašnjenja o načinu njihovog funkcionisanja.

Kriterijumi

Opis

>25 i <50

Ovaj kriterijum se primenjuje na polje tipa „Broj“, poput polja „Cena“ ili „JediniceNaLageru“. Njime su obuhvaćeni samo zapisi u kojima polje sadrži vrednost veću od 25 i manju od 50.

DateDiff ("yyyy"; [DatumRođenja]; Date()) > 30

Ovaj kriterijum se primenjuje na polje tipa „Datum/vreme“, poput polja „DatumRođenja“. Rezultatom upita su obuhvaćeni samo zapisi u kojima je broj godina koji je protekao od datuma rođenja neke osobe do današnjeg datuma veći od 30.

Je bez vrednosti

Ovaj kriterijum može da se primeni na bilo koju vrstu polja kako bi se prikazali zapisi u kojima se nalazi polje bez vrednosti

Kao što prethodna tabela prikazuje, kriterijumi mogu bitno da se razlikuju, u zavisnosti od tipa podataka polja na koje se kriterijumi primenjuju, kao i od specifičnih zahteva koje imate. Neki kriterijumi su jednostavni i koriste osnovne operatore i konstante. Drugi su složeni, koriste funkcije, specijalne operatore i sadrže reference na polja.

Važno : Ako se polje koristi sa agregatnom funkcijom, ne možete da navedete kriterijume za to polje u odredbi WHERE. Umesto toga, koristite odredbu HAVING da biste naveli kriterijume za grupisana polja. Više informacija potražite u odeljku Rad sa rezimiranim podacima: GROUP BY i HAVING.

Sintaksa odredbe WHERE

Odredba WHERE ima sledeće osnovnu sintaksu:

WHERE field = criterion

Na primer, pretpostavimo da želite da telefonski broj klijenta, ali sećate se jedino da se klijent preziva Stanković. Umesto da gledate sve telefonske brojeve u bazi podataka, možete da koristite odredbu WHERE da biste ograničili rezultate i da biste lakše pronašli broj telefona koji želite. Uz pretpostavku da se prezimena čuvaju u polju koje se zove „Prezime“, vaša odredba WHERE pojavljuje se na sledeći način:

WHERE [LastName]='Bagel'

Napomena : Ne morate da zasnivate kriterijume u odredbi WHERE na jednakosti vrednosti. Možete da koristite druge operatore za poređenje, kao što je veće od (>) ili manje od (<). Na primer, WHERE [Cena]>100.

Korišćenje odredbe WHERE za kombinovanje izvora podataka

Ponekad možda želite da kombinujete izvore podataka na osnovu polja koja sadrže podatke koji se podudaraju, ali sadrže različite tipove podataka. Na primer, polje u jednoj tabeli možda ima tip podataka „Broj“, a vi želite da uporedite to polje sa poljem u drugoj tabeli koja ima tip podataka „Tekst“.

Ne možete da kreirate spajanje između polja koja sadrže različite tipove podataka. Da biste kombinovali podatke iz dva izvora podataka na osnovu vrednosti u poljima koja imaju različite tipove podataka, kreirajte odredbu WHERE koja koristi jedno polje kao kriterijum za drugo polje, koristeći ključnu reč LIKE.

Na primer, pretpostavimo da želite da koristite podatke iz "tabele1 i tabele2, ali samo kada se podaci u polju1 (tekstualno polje u tabeli1) podudaraju sa podacima u polju2 (numeričko polje u tabeli2). Odredba WHERE bi izgledala na sledeći način:

WHERE field1 LIKE field2

Više informacija o načinu kreiranja kriterijuma za korišćenje u odredbi WHERE potražite u članku Primeri kriterijuma upita.

Vrh stranice

Unapredite 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.

×