Lausekkeiden syntaksin opas

Kun käytät Microsoft Accessia, sinun on joskus käsiteltävä arvoja, jotka eivät ole suoraan käyttämissäsi tiedoissa. Voit esimerkiksi joutua laskemaan tilauksen arvonlisäveron tai tilauksen kokonaisarvon. Voit laskea nämä arvot käyttämällä lausekkeita.

Jotta voit käyttää lausekkeita, sinun on ensin kirjoitettava ne käyttämällä oikeaa syntaksia. Syntaksi on joukko sääntöjä, joiden avulla lausekkeen sanat ja symbolit yhdistetään oikein.

Ajattele näin: kun haluat Accessin tekevän jotakin, sinun on puhuttava sen kieltä. Oletetaan, että haluat pyytää Accessia katsomaan Asiakkaat-taulukon Syntymäpv-kenttää ja kertomaan asiakkaan syntymävuoden. Voit kirjoittaa tämän lausekkeen muodossa DatePart(yyyy”, [Asiakkaat]![Syntymäpv]). Tämä lauseke koostuu DatePart-funktiosta ja kahdesta argumentin arvosta, jotka ovat ”yyyy” ja [Asiakkaat]![Syntymäpv].

Tutkitaan lauseketta tarkemmin.

Esimerkkilauseke

1. DatePart on funktio, joka tutkii päivämäärän ja palauttaa tietyn osan.

Vihje: Access 2010:stä alkaen lausekkeenmuodostimessa on IntelliSense-ominaisuus, jonka avulla näet, mitä argumentteja lausekkeessa tarvitaan.

2. Aikaväliargumentti kertoo Accessille, mikä päivämäärän osa palautetaan. Tässä tapauksessa ”yyyy” kertoo Accessille, että haluat sen palauttavan vain vuosiosan.

3. Päivämääräargumentti kertoo Accessille, mistä päivämääräarvoa on etsittävä. Tässä tapauksessa [Asiakkaat]![Syntymäpv] pyytää Accessia etsimään päivämäärää Asiakkaat-taulukon Syntymäpv-kentästä.

Kuten näet, Accessin lausekkeissa käytetään kieltä, jota on aluksi hieman vaikea lukea. Kun opettelet lausekkeiden syntaksin ja harjoittelet hiukan, tästä tulee paljon helpompaa.

On joitakin keskeisiä käsitteitä, jotka on ymmärrettävä ennen kuin yrität kirjoittaa lausekkeita. Tässä artikkelissa esitellään käsitteet, jotka sinun on ymmärrettävä, jotta osaat käyttää oikeaa syntaksia, ja käsitellään lausekkeissa käytettävä syntaksi.

Tässä artikkelissa ei käsitellä Structured Query Language (SQL) -syntaksia eikä anneta ohjeita Visual Basic for Applications (VBA) -syntaksin käyttämiseen.

Artikkelin sisältö

Johdanto

Objektit, kokoelmat ja ominaisuudet

Tunnisteet

Funktiot, operaattorit ja vakiot

Johdanto

Lauseke luodaan yhdistämällä tunnisteita funktioiden, operaattoreiden ja vakioiden avulla. Kelvollisessa lausekkeessa on oltava vähintään yksi funktio tai vähintään yksi tunniste, ja se voi sisältää myös vakioita tai operaattoreita. Voit käyttää lauseketta myös toisen lausekkeen osana, yleensä funktion argumenttina.

  • Tunnisteet lausekkeissa    Lausekkeessa olevan tunnisteen yleinen muoto on [Kokoelman nimi]![Objektin nimi].[Ominaisuuden nimi].

    Huomautus: Sinun on määritettävä riittävästi tunnisteen osia, jotta se on yksilöllinen lausekkeen kontekstissa. Tunniste voi usein olla myös muodossa [Objektin nimi].

  • Funktiot lausekkeissa    Funktiota käyttävän lausekkeen yleinen muoto on Funktio(argumentti, argumentti), jossa yksi argumenteista on yleensä tunniste tai lauseke.

    Huomautus: Jotkin funktiot eivät vaadi argumentteja.

    Ennen kuin käytät tiettyä funktiota, katso vastaavasta ohjeartikkelista funktion syntaksin tarkat tiedot.

  • Operaattorit lausekkeissa    Operaattoria käyttävän lausekkeen yleinen muoto on Tunniste operaattori tunniste. Muotoon on joitakin poikkeuksia, jotka on kuvattu Operaattorit-osan taulukoissa.

  • Vakiot lausekkeissa    Vakiota käyttävän lausekkeen yleinen muoto on Tunniste vertailuoperaattori vakio.

Sivun alkuun

Objektit, kokoelmat ja ominaisuudet

Kaikkia Access-tietokannan taulukoita, kyselyitä, lomakkeita, raportteja ja kenttiä kutsutaan objekteiksi. Jokaisella objektilla on nimi. Joillekin objekteille on jo annettu nimi, kuten esimerkiksi Yhteystiedot-taulukolle tietokannassa, joka on luotu Microsoft Office Accessin Yhteystiedot-mallista. Kun luot uuden objektin, annat sille nimen.

Tietyntyyppisen objektin kaikkien jäsenten joukkoa kutsutaan kokoelmaksi. Esimerkiksi tietokannan kaikkien taulukoiden joukko on kokoelma. Jotkin objektit, jotka kuuluvat tietokannassa kokoelmaan, voivat myös olla kokoelmia, jotka sisältävät muita objekteja. Esimerkiksi taulukko-objekti on kokoelma, joka sisältää kenttäobjekteja.

Objekteilla on ominaisuudet, jotka kuvaavat objektin ominaispiirteet ja joiden avulla ominaispiirteitä voi muuttaa. Esimerkiksi kyselyobjektilla on Oletusnäkymä-ominaisuus, joka sekä kuvaa että antaa määrittää sen, miten kysely näkyy, kun se suoritetaan.

Seuraava kaavio kuvaa kokoelmien, objektien ja ominaisuuksien välisen suhteen:

Kokoelmien yhteydet objekteihin ja ominaisuuksiin

1. Kokoelma

2. Objekti

3. Ominaisuus

Sivun alkuun

Tunnisteet

Kun käytät objektia, kokoelmaa tai ominaisuutta lausekkeessa, viittaat kyseiseen osaan käyttämällä tunnistetta. Tunniste sisältää määritettävän osan nimen ja sen osan nimen, johon se kuuluu. Esimerkiksi kentän tunniste sisältää kentän nimen ja sen taulukon nimen, johon kenttä kuuluu. Esimerkki tällaisesta tunnisteesta löytyy edellisestä lauseke-esimerkistä: [Asiakkaat]![Syntymäpv].

Joissakin tapauksissa pelkkä osan nimi toimii tunnisteena. Tämä koskee tilanteita, joissa osan nimi on yksilöllinen luotavan lausekkeen kontekstissa. Loput tunnisteesta saadaan kontekstista. Jos esimerkiksi suunnittelet kyselyä, joka käyttää vain yhtä taulukkoa, pelkät kenttien nimet toimivat tunnisteina, koska taulukon kenttien nimien on oltava yksilöllisiä kyseisessä taulukossa. Koska käytät vain yhtä taulukkoa, taulukon nimi päätellään tunnisteissa, joiden avulla viittaat kyselyssä kenttään.

Joskus tunnisteen osat on annettava erikseen, jotta viittaus toimii. Näin on toimittava, kun tunniste ei ole yksilöllinen lausekkeen kontekstissa. Jos moniselitteisyyttä ilmenee, sinun on annettava riittävästi tunnisteen osia, jotta tunniste on yksilöllinen kontekstissa. Oletetaan esimerkiksi, että suunnittelet kyselyä, jossa käytetään taulukkoa nimeltä Tuotteet ja taulukkoa nimeltä Tilaukset, ja kummassakin taulukossa on Tuotetunnus-kenttä. Tässä tapauksessa tunnisteen, jota käytät kyselyssä viittaamaan kumpaan tahansa Tuotetunnus-kenttään, on sisällettävä taulukon nimi kentän nimen lisäksi, esimerkiksi [Tuotteet]![Tuotetunnus].

Tunnisteen operaattorit    Tunnisteessa voi käyttää kolmea operaattoria.

  • huutomerkkioperaattori (!)

  • pisteoperaattori (.)

  • hakasuljeoperaattori ([ ])

Näitä operaattoreita käytetään ympäröimällä tunnisteen jokainen osa hakasulkeilla ja yhdistämällä ne sitten joko huutomerkki- tai pisteoperaattorilla. Esimerkiksi Työntekijät-taulukossa olevan Sukunimi-kentän tunniste voidaan ilmaista muodossa [Työntekijät]![Sukunimi]. Huutomerkkioperaattori kertoo Accessille, että seuraavana tulee objekti, joka kuuluu huutomerkkioperaattoria edeltävään kokoelmaan. Tässä tapauksessa [Sukunimi] on kenttäobjekti, johon kuuluu kokoelmaan [Työntekijät], joka itsessään on taulukko-objekti.

Huomautus: Tarkkaan ottaen tunnisteen tai tunnisteen osan ympärille ei aina tarvitse kirjoittaa hakasulkeita. Jos tunnisteessa ei ole välilyöntejä eikä muita erikoismerkkejä, Access lisää sulkeet automaattisesti, kun se lukee lausekkeen. Sulkeiden kirjoittaminen on kuitenkin hyvä käytäntö. Se auttaa välttämään virheitä ja toimii myös visuaalisena merkkinä sille, että lausekkeen tietty osa on tunniste.

Sivun alkuun

Funktiot, operaattorit ja vakiot

Jotta voit luoda lausekkeen, tarvitset muutakin kuin tunnisteita, koska sinun on suoritettava jonkinlainen toiminto. Lausekkeessa suoritetaan toimintoja käyttämällä funktioita, operaattoreita ja vakioita.

Funktiot

Funktio on toimenpide, jota voi käyttää lausekkeessa. Jotkin funktiot, kuten Date, eivät vaadi syötettä toimiakseen. Useimmat funktiot vaativat kuitenkin syötteitä, joita kutsutaan argumenteiksi. Tämän artikkelin alussa olevassa esimerkissä DatePart-funktio käyttää kahta argumenttia: aikaväli-argumenttia (jonka arvo on ”yyyy”) ja päivämäärä-argumenttia (jonka arvo on [Asiakkaat]![Syntymäpv]). DatePart-funktio edellyttää vähintään näitä kahta argumenttia (aikaväli ja päivämäärä), mutta se hyväksyy enintään neljä argumenttia.

Huomautus: Kun funktiolla on enemmän kuin yksi argumentti, argumentit erotetaan toisistaan pilkuilla.

Seuraavassa on lueteltu joitakin funktioita, joita käytetään usein lausekkeissa. Napsauttamalla kunkin funktion linkkiä saat lisätietoja syntaksista, jota kyseisen funktion kanssa käytetään.

  • Date Date-funktion avulla lausekkeeseen lisätään järjestelmän nykyinen päivämäärä. Sitä käytetään usein Format-funktion kanssa, ja sitä käytetään myös sellaisten kenttien tunnisteiden kanssa, jotka sisältävät päivämäärä- ja aikatietoja.

  • DatePart DatePart-funktion avulla määritetään tai poimitaan päivämäärän osa, yleensä päivämäärä, joka on peräisin kentän tunnisteesta, mutta joskus päivämääräarvo, jonka palauttaa toinen funktio, esimerkiksi Date.

  • DateDiff DateDiff-funktion avulla määritetään kahden päivämäärän välinen ero, yleensä kentän tunnisteesta peräisin olevan päivämäärän ja Date-funktion avulla saadun päivämäärän välillä.

  • Format Format-funktion avulla tunnisteeseen voidaan lisätä muotoilu, ja sen avulla voidaan myös lisätä muotoilu toisen funktion tuloksiin.

  • IIf IIf-funktion avulla voidaan määrittää, onko lausekkeen tulos tosi vai epätosi, ja palauttaa jonkin määritetty arvo, jos lausekkeen tulos on tosi, ja toinen määritetty arvo, jos lausekkeen tulos on epätosi.

  • InStr InStr-funktion avulla haetaan merkin tai merkkijonon sijainti toisen merkkijonon sisällä. Haettu merkkijono on yleensä peräisin kentän tunnisteesta.

  • Left, Mid ja Right Näiden funktioiden avulla voidaan poimia merkkejä merkkijonosta alkaen vasemmanpuoleisimmasta merkistä (Left), tietystä sijainnista keskellä (Mid) tai oikeanpuolimmaisesta merkistä (Right). Niitä käytetään usein InStr-funktion kanssa. Merkkijono, josta nämä funktiot poimivat merkkejä, saadaan yleensä kentän tunnisteesta.

Luokiteltu funktioiden luettelo on artikkelissa Funktiot (järjestettyinä luokittain).

Operaattorit

Operaattori on sana tai symboli, joka ilmaisee lausekkeen muiden osien välisen aritmeettisen tai loogisen suhteen. Operaattorit voivat olla seuraavanlaisia:

  • aritmeettisia, kuten plusmerkki (+)

  • vertailuoperaattoreita, kuten yhtäläisyysmerkki (=)

  • loogisia operaattoreita, kuten Not.

Operaattoreita käytetään yleensä osoittamaan kahden tunnisteen välinen suhde. Seuraavissa taulukoissa kuvataan operaattorit, joita voi käyttää Accessin lausekkeissa.

Aritmeettiset operaattorit   

Aritmeettisia operaattoreita käytetään laskettaessa arvoa vähintään kahdesta luvusta tai vaihdettaessa luvun etumerkkiä positiivisesta negatiiviseksi.

Operaattori

Käyttötarkoitus

Esimerkki

+

Laskee yhteen kaksi lukua.

[Välisumma]+[Arvonlisävero]

-

Laskee kahden luvun erotuksen tai ilmoittaa luvun negatiivisen arvon.

[Hinta]-[Alennus]

*

Kertoo kaksi lukua.

[Määrä]*[Hinta]

/

Jakaa ensimmäisen luvun toisella luvulla.

[Yhteensä]/[Nimikemäärä]

\

Pyöristää molemmat luvut kokonaisluvuiksi ja jakaa sitten ensimmäisen luvun toisella luvulla. Katkaisee sen jälkeen tuloksen kokonaisluvuksi.

[Ilmoittautuneet]\[Huoneet]

Mod

Jakaa ensimmäisen luvun toisella luvulla ja palauttaa vain jakojäännöksen.

[Ilmoittautuneet] Mod [Huoneet]

^

Korottaa luvun eksponentin potenssiin.

Luku ^ Eksponentti

Vertailuoperaattorit   

Vertailuoperaattoreiden avulla verrataan arvoja ja palautetaan tulos, joka on joko tosi, epätosi tai tyhjäarvo (tuntematon arvo).

Operaattori

Käyttötarkoitus

<

Määrittää, onko ensimmäinen arvo pienempi kuin toinen arvo.

<=

Määrittää, onko ensimmäinen arvo pienempi tai yhtä suuri kuin toinen arvo.

>

Määrittää, onko ensimmäinen arvo suurempi kuin toinen arvo.

>=

Määrittää, onko ensimmäinen arvo suurempi tai yhtä suuri kuin toinen arvo.

=

Määrittää, onko ensimmäinen arvo yhtä suuri kuin toinen arvo.

<>

Määrittää, onko ensimmäinen arvo eri suuri kuin toinen arvo.

Kaikissa tapauksissa jos joko ensimmäinen arvo tai toinen arvo on tyhjäarvo, myös tulos on tyhjäarvo. Koska tyhjäarvo edustaa tuntematonta arvoa, kaikkien tyhjäarvon sisältävien vertailujen tulos on myös tuntematon.

Loogiset operaattorit    

Loogisilla operaattoreilla yhdistetään kaksi arvoa ja palautetaan joko tosi-, epätosi- tai tyhjäarvo-tulos. Loogisia operaattoreita voidaan kutsua myös totuusarvo-operaattoreiksi.

Operaattori

Käyttö

Kuvaus

And

Lauseke1 And Lauseke2

Tosi, jos Lauseke1 ja Lauseke2 ovat tosia.

Or

Lauseke1 Or Lauseke2

Tosi, jos joko Lauseke1 tai Lauseke2 on tosi.

Eqv

Lauseke1 Eqv Lauseke2

Tosi, jos sekä Lauseke1 että Lauseke2 ovat tosia tai sekä Lauseke1 että Lauseke2 ovat epätosia.

Not

Not Lauseke

Tosi, jos Lauseke ei ole tosi.

Xor

Lauseke1 Xor Lauseke2

Tosi, jos joko Lauseke1 on tosi tai Lauseke2 on tosi, mutta eivät molemmat.

Ketjutusoperaattorit   

Ketjutusoperaattoreilla voidaan yhdistää kaksi tekstiarvoa yhdeksi merkkijonoksi.

Operaattori

Käyttö

Kuvaus

&

merkkijono1 & merkkijono2

Muodostaa yhden merkkijonon yhdistämällä kaksi merkkijonoa.

+

merkkijono1 + merkkijono2

Muodostaa yhden merkkijonon yhdistämällä kaksi merkkijonoa ja välittää tyhjäarvoja.

Erikoisoperaattorit   

Erikoisoperaattoreita käytetään seuraavassa taulukossa kuvatuilla tavoilla.

Operaattori

Kuvaus

Lisätietoja

Is Null tai Is Not Null

Määrittää, onko arvo tyhjäarvoinen vai ei tyhjäarvoinen.

Like "malli"

Täsmää merkkijonoarvoja käyttämällä yleismerkkioperaattoreita ? ja *.

Like-operaattori

Between arvo1 And arvo2

Määrittää, sisältyykö numeerinen arvo tai päivämääräarvo tiettyyn alueeseen.

Between...And -operaattori

In(merkkijono1,merkkijono2...)

Määrittää, sisältyykö merkkijonoarvo merkkijonoarvojen joukkoon.

In-operaattori

Vakiot

Vakio on tunnettu arvo, joka ei muutu ja jota voi käyttää lausekkeessa. Accessissa on neljä yleisesti käytettyä vakiota:

  • True    Ilmaisee jonkin olevan loogisesti tosi.

  • False    Ilmaisee jonkin olevan loogisesti epätosi.

  • Null    Ilmaisee tunnetun arvon puuttumisen.

  • ”” (tyhjä merkkijono)    Ilmaisee arvon, jonka tiedetään olevan tyhjä.

Vakioita voi käyttää funktion argumentteina, ja niitä voi käyttää lausekkeessa ehdon osana. Voit esimerkiksi käyttää tyhjän merkkijonon vakiota (””) sarakkeen ehdon osana kyselyssä kyseisen sarakkeen kenttäarvojen laskemiseen syöttämällä seuraavan ehdon: <> ””. Tässä esimerkissä <> on operaattori ja ”” on vakio. Kun niitä käytetään yhdessä, ne ilmaisevat, että tunnistetta, johon niitä käytetään, on verrattava tyhjään merkkijonoon. Tuloksena saatava lauseke on tosi, jos tunnisteen arvo on mikä tahansa muu kuin tyhjä merkkijono.

Huomautus: Ole varovainen, kun käytät Null-vakiota. Useimmissa tapauksissa Null-vakion käyttäminen vertailuoperaattorin kanssa aiheuttaa virheen. Jos haluat verrata arvoa Null-vakioon lausekkeessa, käytä Is Null- tai Is Not Null -operaattoria.

Lisätietoja lausekkeiden käyttämisestä on artikkelissa Lausekkeen muodostaminen.

Sivun alkuun

Kehitä taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×