News
Photos
Articles
Components
Applications
Kleinkunst

Access - Selection queries

Voor persoonlijk gebruik of eenvoudige toepassingen is MS Access een interessante database. Vooral omdat ook beginners zonder uitgebreide database- of SQL-kennis toch snel aan de slag kunnen. Voor het maken van queries biedt Access een intuïtieve visuele interface aan waarmee je zelfs uitgebreide queries kan samenstellen. Hieronder een overzicht van operatoren en functies die je kan gebruiken.

Vergelijkingsoperatoren

Operator Beschrijving
= Gelijk aan (kan eventueel weggelaten worden)
< Kleiner dan
<= Kleiner dan of gelijk aan
> Groter dan
>= Groter dan of gelijk aan
<> Ongelijk aan

Voorbeelden

Criteria Veld Mogelijke uitvoer
>3910 POSTCODE 3920, 3500, 9000
>="Jan" VOORNAAM Jan, Kim, Ludo, Leen, Marie, Stijn, Tim
=Ja GETROUWD (Alle personen die getrouwd zijn)
<#10/08/90# DATUM 01/09/63, 23/03/75, 12/11/80, 30/01/88
<"d*" NAAM Antonissen, Alen, Bots, Cruysberghs, Cools

 Andere operatoren

Operator Beschrijving
Between ... and ...

Tussen ... en ...

Hiermee kan men bepalen of een waarde zich tussen twee waardes bevindt De grensen worden ook meegeteld.
In(...;...) Hiermee bepaal je of een waarde voorkomt in een reeks waarden
Is Null Hiermee wordt gecontroleerd of een waarde Null (=leeg) is
Like

Zoals

Hiermee kan je gebruik maken van joker tekens (* : meerdere willekeurige tekens, ? : één willekeurig teken, # : één willekeurig cijfer)

Voorbeelden

Criteria Veld Mogelijke uitvoer
In("Jan";"Piet";"Tom";"Peter") VOORNAAM (Alle personen die Jan, Piet, Tom of Peter noemen)
Between 3900 and 3920 POSTCODE 3900, 3910, 3920
Between #01/03/76# and #01/05/80# GEBOORTEDAT 01/03/76, 15/10/77, 07/04/77, 08/12/78, 30/09/80
Not like "L*" PLAATS Aalst, Brussel, Gent, Overpelt, Tongeren
Like "[!L]*" PLAATS Aalst, Brussel, Gent, Overpelt, Tongeren
Like"d??" WOORDEN dat, die, dit
Like"d*" WOORDEN dat, daarom, deze, deken, die, dier, dit, doos
Like"[rs]*" VOORNAAM René, Robbie, Stefan, Stijn
Like"[r-t]*" VOORNAAM René, Robbie, Stefan, Stijn, Tim
Like"*[rmn]*" NAAM Antonissen, Alen, Cruysberghs, Maes, Peters, Raes
Like"#[ds]*" GETAL 1ste, 2de, 3de
Like"011/54*" TELEFOON 011/54.13.26, 011/54.25.48, 011/54.31.35

Logische operatoren

Operator Beschrijving
And, En Beide waarden moeten waar zijn
Or, Of Minstens één van beide voorwaarden moet waar zijn
Not, Niet Dit keert de voorwaarde om
Xor, Xof Juist één van de voorwaarden moet waar zijn

Voorbeelden

Criteria Veld Mogelijke uitvoer
>"q*" and <"u*" VOORNAAM René, Robbie, Stefan, Stijn, Tim, Tristam
="r*" or "s*" VOORNAAM Robbie, Stefan, Stijn
Not like "L*" PLAATS Antwerpen, Brussel, Gent, Luik, Tongeren
"*a*" Xof "*m*" WOORDEN aap, kapper, lach, mens, moeder (niet maan, raam)

Andere operatoren en expressies

  • Als er naar tekst gezocht moet worden, moeten de expressies altijd tussen aanhalingstekens staan (".."), ook de jokertekens * ? # en opsommingstekens []. Namen van velden (ook met parameters) mogen niet tussen de aanhalingstekens staan.
  • Met het ampersand-teken (&) kan je verschillende expressies aan elkaar koppelen. Dit moet je bv. zeker gebruiken als in je expressie o.a. een veld is opgenomen. vb. Like "*" & [NAAM]
  • [...] Met vierkante haakjes kan je een domein aanduiden. Dit kan een opsomming zijn van tekens of als je een koppelteken (-) gebruik kan je een gans gebied aanduiden. Met het uitroepingsteken (!) kan je tekens opsommen die de gezochte velden niet mogen bevatten. vb. [lma] [a-m] [!mla]
  • Als je datums wil gebruiken met je voor en na de datum het hekje (#) plaatsen.
  • Men kan in een query ook parameters gebruiken, waardoor criteria variabel worden. Wanneer je een naam van een veld opgeeft, die de query niet kent, dan zal bij de uitvoer naar een waarde voor dit ‘veld’ gevraagd worden. Als je nu als veldnaam een vraag stelt en deze dus tussen vierkante haakjes plaats, dan zal Access bij de uitvoer van de query naar een parameter vragen. vb. =[Geef de postcode]

Functies

  • Count([veld]), Aantal Geeft het aantal velden met naam [veld]
  • Sum([veld]), Som Berekent de som van de waardes in het veld [veld]
  • Avg([veld]), Gem Berekent het gemiddelde van waardes
  • Date() Geeft de huidige datum 99/99/99
  • Year([veld]) Geeft het jaar van een veld dat een datum bevat
  • Month([veld]) Geeft de maand van een veld dat een datum bevat
  • Left$([veld];n) Geeft de n linker tekens van [veld]
  • Right$([veld];n) Geeft de n rechter tekens van [veld]
  • Mid$([veld];n) Geeft alle tekens beginnend bij de n-de positie
  • Len([veld]) Geeft de lengte van een veld
  • Lcase$([veld]) Geeft het veld terug in kleine letters (lowercase)
  • Ucase$([veld]) Geeft het veld terug in hoofdletters (uppercase)

Voorbeelden

Initialen van persoon in hoofdletters en gescheiden met punt
ucase$(left$([VOORNAAM];1)) & "." & ucase$(left$([NAAM];1)) & "."
1ste en laatste karakter in hoofdletters, rest in kleine letters
ucase$(left$([NAAM];1)) & lcase$(mid$(left$([NAAM];len([NAAM])-1);2)) & ucase$(right$([NAAM];1))