Access SQL: WHERE-klausel

Access SQL: WHERE-klausel

See on üks Access SQL-i puudutavatest artiklitest. Artiklis kirjeldatakse, kuidas kirjutada WHERE-klauslit ning tuuakse näiteid illustreerimaks erinevaid tehnikaid, mida saab WHERE-klausli juures kasutada.

SQL-lauses määratleb WHERE-klausel kriteeriumid, millele väljaväärtused peavad vastama kirjetel, mis sisaldavad päringutulemitesse kaasatavaid väärtusi.

Access SQL-i ülevaate leiate artiklist Accessi SQL: põhimõtted, sõnavara ja süntaks.

Selle artikli teemad

Tulemite piiramine kriteeriumide abil

WHERE-klausli süntaks

WHERE-klausli kasutamine andmeallikate kombineerimiseks

Tulemite piiramine kriteeriumide abil

Kui soovite kasutada andmeid, et piirata päringul tagastatavate kirjete arvu, kasutage selleks kriteeriumeid. Päringukriteerium sarnaneb valemiga: see on string, mis võib sisaldada väljaviiteid, tehtemärke ja konstante. Päringukriteeriumid on teatud avaldise tüüp.

Järgmises tabelis on esitatud näidiskriteeriumid koos selgitustega nende töötamise kohta.

Kriteeriumid

Kirjeldus

>25 ja <50

Seda kriteeriumi rakendatakse numbriväljale (nt Hind või Kaupade_arv). See kaasab ainult need kirjed, milles väli Hind või KaupadeArv sisaldab 25-st suuremat ja 50-st väiksemat väärtust.

DateDiff ("yyyy", [Sünniaeg], Date()) > 30

Seda kriteeriumi rakendatakse kuupäeva-/kellaajaväljale (nt Sünnikuupäev). Päringutulemisse kaasatakse ainult need kirjed, milles isiku sünniaja ja tänase päeva vahele jäävate aastate arv on suurem kui 30.

Is Null

Seda kriteeriumi saab rakendada igat tüüpi väljadele, kaasamaks need kirjed, milles väli on tühiväärtusega.

Nagu eelnevast tabelist nähtub, võivad kriteeriumid üksteisest erineda olenevalt sellest, millist tüüpi andmeväljadele kriteeriumeid rakendatakse ja millised on teie vajadused. Mõned kriteeriumid on lihtsad ja põhinevad baastehtemärkidel ja -konstantidel. Teised on keerukamad, põhinevad funktsioonidel ja erilistel tehtemärkidel, ning sisaldavad väljaviiteid.

NB! : Kui välja kasutatakse kokkuvõttefunktsiooniga, ei saa te selle välja kriteeriumi WHERE-klausliga määrata. Kasutage selle asemel HAVING-klauslit, et määrata kokkuvõtteväljade kriteeriumid. Lisateavet leiate artiklitest Accessi SQL: põhimõtted, sõnavara ja süntaks ja HAVING-klausel.

WHERE-klausli süntaks

Päringukriteeriumeid kasutate WHERE-klausli SELECT-lauses.

WHERE-klauslil on järgmine tavaline süntaks:

WHERE field = criterion

Oletame näiteks, et soovite leida kliendi telefoninumbrit, kuid mäletate vaid, et tema perekonnanimi on Bagel. Selle asemel, et vaadata üle kõik teie andmebaasis leiduvad telefoninumbrid, saate kasutada tulemite piiramiseks ja hõlpsamaks soovitud telefoninumbri leidmiseks WHERE-klauslit. Eeldusel, et perekonnanimed on talletatud väljale nimega Perekonnanimi, kuvatakse teie WHERE-klausel järgmisel kujul:

WHERE [LastName]='Bagel'

Märkus. : Te ei pea WHERE-klausli kriteeriumide aluseks võtma väärtuste samaväärsust. Saate kasutada muid võrdlusmärke, nt suurem kui (>) või väiksem kui (<). Näiteks WHERE [Hind]>100.

WHERE-klausli kasutamine andmeallikate kombineerimiseks

Mõnikord on andmeallikate kombineerimisel tarvis aluseks võtta väljad, mis sisaldavad küll kattuvaid andmeid, kuid nende andmetüüp on erinev. Võib olla soovite näiteks võrrelda ühe tabeli välja, mille andmetüüp on „Arv“, teise tabeli väljaga, mille andmetüüp on „Tekst“.

Erinevate andmetüüpidega väljade vahel ei saa ühendust luua. Et kombineerida andmeid kahest andmeallikast, mille väljaväärtused on erinevate andmetüüpidega, looge WHERE-klausel, mis kasutab üht välja teise välja kriteeriumina. Selleks kasutage märksõna LIKE.

Võib olla soovite näiteks kasutada andmeid tabelitest Tabel1 ja Tabel2, kuid vaid juhul, kui välja Väli1 andmed (Tabel1 tekstiväli) vastavad välja Väli2 andmetele (Tabel2 arvuväli). Teie WHERE-klausel sarnaneks järgmisega:

WHERE field1 LIKE field2

Lisateavet WHERE-klauslis kasutatavate kriteeriumide loomisest leiate artiklist Päringukriteeriumide näited.

Lehe algusse

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liituge Office Insideri programmiga

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×