Office 2010 - Access

Les 34: ActieQuery’s (4)

34/76 Lessen 

Samenvoegquery

Een samenvoegquery combineert de resultaten van meerdere soortgelijke selectiequery’s.

Bijvoorbeeld, in onze database hebben we een tabel met gegevens over klanten, en een andere tabel die de gegevens over leveranciers bevat, maar beide tabellen beschikken niet over een relatie.

Dan kunnen we voor elke tabel een selectiequery maken, maar dit geeft ons nog steeds twee verschillende reeksen met gegevens.

Met een samenvoegquery kunnen we de resultaten van twee of meer selectiequery’s in één resultaatset samenvoegen.

Om een samenvoegquery te laten werken, moeten de verschillende selectiequery’s over hetzelfde aantal velden beschikken, in dezelfde volgorde, en hetzelfde gegevenstype hebben.

In dit voorbeeld heb ik een selectiequery gemaakt van een klantenlijst, en een leverancierslijst.

les34_image001
Beide beschikken over hetzelfde aantal velden, in dezelfde volgorde, en over hetzelfde gegevenstype.

Met beide query’s open klik je de knop “Queryontwerp” onder het tabblad “Maken” in het lint.

Het dialoogvenster “Tabel weergeven” dat verschijnt, mag je sluiten.

Klik de knop “Samenvoegquery” in het lint.

les34_image002
Dit verbergt het queryontwerpvenster, en toont de SQL-weergave.

Een samenvoegquery wordt getoond in SQL.

SQL is een code die Access verteld wat het met de informatie moet doen.

Rechtsklik het eerste tabblad van de query die je wil combineren, in dit geval de query “QueryKlanten”.

Kies SQL-weergave in het drop-downmenu.
De SQL-code van deze query wordt getoond:

les34_image003
Selecteer deze code, en kopieer deze in de samenvoegquery, in dit geval “Query1”.

Om een tweede query te kunnen toevoegen aan de samenvoegquery, moet je de puntkomma (;) aan het eind van deze SQL-code eerst verwijderen.

les34_image004
Met de cursor helemaal achteraan de SQL-code, klik je de ENTER-toets op je toetsenbord.

Dit brengt deze op een nieuwe lijn.

  • Typ het woord UNION, gevolgd door het woord ALL.
  • Het woord ALL is optioneel.
  • UNION betekent dat de resultaten van de SELECT-instructie die voorafgaat aan UNION, worden samengevoegd met de resultaten van de SELECT-instructie die volgt op UNION.
  • ALL betekent dat dubbele rijen niet worden verwijderd wanneer we beide query-codes samenvoegen.

Heb je dit alles gedaan, dan heb je nu dit:

les34_image005
Hetzelfde doen we voor “QueryLeveranciers”.

Klik dus het tabblad “QueryLeveranciers”, selecteer de code, en kopieer deze naar de samenvoegquery.

les34_image006
Klik de knop “Uitvoeren” in het lint.
De resultaten uit beide query’s worden nu getoond in de samenvoegquery.

les34_image007
Sla deze op indien je deze wenst te behouden.

Formidabel U hebt Les 34 voltooid START VOLGENDE LES