Gegevens beheren met query 's

Query's met meerdere gegevensbronnen maken

Opmerking:  We willen u graag zo snel mogelijk de meest recente Help-inhoud in uw eigen taal bieden. Deze pagina is automatisch vertaald en kan grammaticale fouten of onnauwkeurigheden bevatten. Wij hopen dat deze inhoud nuttig voor u is. Kunt u ons onder aan deze pagina laten weten of de informatie nuttig voor u was? Hier is het Engelstalige artikel ter referentie.

Uw browser biedt geen ondersteuning voor video. Installeer Microsoft Silverlight, Adobe Flash Player of Internet Explorer 9.

Om de benodigde antwoorden te vinden, maakt u meestal query's waarmee informatie wordt verzameld uit meerdere tabellen of een combinatie van tabellen en query's.

Aan de slag met joins

Soms moet u gegevens uit meerdere bronnen (tabel of query) gebruiken om een vraag te beantwoorden. U wilt bijvoorbeeld bekijken hoeveel klanten in een bepaalde regio een specifiek product hebben besteld.

Als u meerdere gegevensbronnen toevoegt, worden in Access de bestaande, gedefinieerde relaties tussen de gegevensbronnen gebruikt of worden er joins tussen de gegevensbronnen gemaakt voor querydoeleinden. Een join is een type relatie tussen gegevensbronnen in een query.

Opmerking: Joins zijn tijdelijk en worden alleen aan de query gekoppeld. Als u vaak dezelfde join tussen tabellen maakt, kunt u een permanente relatie hiertussen maken.

Inner joins

De meeste joins zijn inner joins. Outer joins worden besproken in Query's maken met outer joins.

Met een inner join worden alleen gegevens van één bron geretourneerd als er overeenkomende records in de andere bron worden gevonden. Als u bijvoorbeeld informatie over producten en orders opvraagt, ziet u alleen gegevens voor producten met een overeenkomende order.

Schermafbeelding van de tabellen Product en Orders

Self-joins

Met een self-join verbindt u twee exemplaren van dezelfde tabel of query. Hiermee kunt u records uit dezelfde tabel combineren als er overeenkomende waarden in de gekoppelde velden zijn.

U hebt bijvoorbeeld een werknemerstabel waarin alle werknemers in de organisatie, inclusief managers, worden weergegeven. De tabel bevat het veld Rapporteert aan, dat de id van de manager van de werknemer bevat.

Id

Achternaam

Voornaam

Rapporteert aan

1

Plant

Fenna

5

2

Zuidwijk

Jacobje

3

Kuijken

Wander

10

4

Steen

Julia

5

5

de Graaf

Jimmy

2

6

Neumann

Roelf

10

7

Veenhuizen

Ger

10

8

Beukema

Maria

10

9

Roossien

Johanna

5

10

Nolet

Kylie

3

Als u de naam van de manager van een werknemer wilt zoeken, zoekt u de werknemer in de tabel, de manager-id in het veld Rapporteert aan en zoekt u vervolgens de id van de manager op in bijbehorende veld Werknemers. Nancy rapporteert bijvoorbeeld aan de manager met werknemer-id 5, Jimmy de Graaf.

Als u deze taak wilt automatiseren, voegt u de tabel Werknemers twee keer toe aan uw query en maakt u vervolgens een self-join. Wanneer u de gegevensbron nog een keer toevoegt, wordt in Access _1 toegevoegd aan de naam van het tweede exemplaar. Als u bijvoorbeeld de tabel Werknemers twee keer toevoegt, krijgt het tweede exemplaar de naam Werknemers_1. Als u de naam van de managers van elke werknemer wilt weergeven, maakt u een join tussen het veld Rapporteert aan in de tabel Werknemers en het veld Werknemer-id in de tabel Werknemers_1.

1. gegevensbronnen toevoegen

  • Selecteer Maken > Queryontwerp.

Voeg alle benodigde tabellen en query's toe als gegevensbron. (Maak u geen zorgen. Als u een gegevensbron vergeet, kunt u deze later toevoegen.)

De gegevensbronnen bevatten mogelijk tabellen waaruit u informatie wilt weergeven (zoals een producttabel) en tabellen met de benodigde informatie voor criteria.

Bestaande, opgeslagen query's zijn ook beschikbaar als gegevensbronnen. Als u bijvoorbeeld al een query hebt gemaakt waarmee wordt gezocht naar alle orders in een bepaalde maand, gebruikt u deze query en de producttabel om alle verkochte producten in een bepaalde maand weer te geven.

2. gerelateerde gegevensbronnen samenvoegen

  • Als u zelf een join wilt toevoegen, sleept u een veld uit een gegevensbron naar het bijbehorende veld in een andere gegevensbron. Standaard wordt in Access een inner join gemaakt.

Voor de meeste relaties wordt in Access een inner join gemaakt. Als u hebt opgegeven dat referentiële integriteit moet worden afgedwongen, wordt deze ook opgenomen. Maar in sommige gevallen wordt de benodigde join niet gemaakt. Als u bijvoorbeeld bestaande query's toevoegt aan de nieuwe query en geen relaties hebt gemaakt, worden er niet automatisch joins gemaakt.

3. de query voltooien

  • Volg de gebruikelijke stappen voor het maken van een query: voeg uitvoervelden toe, voeg criteria toe en voer de query uit of sla deze op. Zie Basisquery's maken voor meer informatie hierover.

Wilt u meer zien?

Training voor Excel

Training voor Outlook

In deze video leert u hoe u een selectiequery met meerdere gegevensbronnen maakt.

Hier leert u hoe u 'joins' kunt gebruiken om een koppeling tussen de verschillende bronnen te maken.

U krijgt ook informatie over de verschillende typen joins die beschikbaar zijn.

Bij het maken van een selectiequery waarvoor meer dan één gegevensbron wordt gebruikt, worden dezelfde basisstappen gebruikt als bij het maken van een query met één gegevensbron.

U opent de queryontwerpfunctie, selecteert uw tabellen of query's en voegt uw velden toe.

Er is echter een verschil.

Wanneer u een query uitvoert op meerdere bronnen voor gegevens, moet u een koppeling maken tussen elke bron.

Als u bijvoorbeeld wilt weten welke producten in de set met orders staan, moet u de orders koppelen aan de bijbehorende producten.

Voor het maken van deze koppelingen gebruikt u een 'join'.

Met een JOIN worden de gegevens in twee gemeenschappelijke velden vergeleken: één van elke gegevensbron.

Met de join wordt bepaald hoe de gegevens in elk veld worden vergeleken.

Met het meest algemene type join worden bijvoorbeeld alleen gegevens van één veld geretourneerd wanneer een overeenkomende waarde in het andere veld wordt gevonden. Zo komt u achter het aantal producten in elke order.

Met een ander type join worden ALLE gegevens uit het ene veld geretourneerd, maar alleen OVEREENKOMENDE gegevens uit het andere veld.

En in dit voorbeeld wordt met de query aangegeven welke orders een bepaald product niet bevatten.

Wanneer u de tabelrelaties hebt gemaakt, is in Access ook een JOIN gemaakt voor elke relatie.

In Access worden uw relaties als PATRONEN voor joins gebruikt, dus in de meeste gevallen zijn uw gekoppelde velden uw primaire en refererende sleutels.

Maar dat hoeven ze niet te zijn. U kunt ook niet-gerelateerde bronnen koppelen.

Als u twee gerelateerde bronnen hebt en u voegt deze toe aan de queryontwerpfunctie, ziet u iets wat eruit ziet als de relatie, maar denk eraan dat het dit niet is. Access laat alleen het type relatie zien dat wordt gebruikt als het PATROON voor de join.

En zo lang u een join hebt tussen uw tabellen of query 's, kunt u velden uit beide bronnen toevoegen.

Let op: we hebben de gekoppelde velden niet aan het ontwerpraster toegevoegd. Dat is niet nodig, omdat deze in Access achter de schermen worden toegevoegd.

U kunt de query uitvoeren en een resultaat verkrijgen.

Laten we nu eens wat grondiger naar joins kijken, want u moet aan enkele belangrijke punten denken.

Ten eerste kunt u het type join instellen of wijzigen door met de rechtermuisknop te klikken op de join-lijn of erop te dubbeltikken en Joineigenschappen te selecteren.

Met deze instellingen wordt het type join in uw query bepaald en dit zijn de meest voorkomende typen joins.

Met deze optie maakt u een 'inner join'. Dit is het type join waarmee overeenkomende gegevens uit BEIDE tabellen worden geretourneerd.

Dit type join wordt in Access gemaakt wanneer u een relatie maakt.

Met de tweede optie maakt u een 'left outer join', wat inhoudt dat met de query ALLE gegevens worden geretourneerd uit de tabel die links wordt weergegeven en alleen OVEREENKOMENDE gegevens uit de andere tabel.

Met de derde optie maakt u een 'RIGHT outer join' en u kunt waarschijnlijk al raden wat er gebeurt.

Met de query worden ALLE gegevens uit de tabel aan de rechterkant geretourneerd en alleen OVEREENKOMENDE gegevens uit de tabel aan de linkerkant.

Outer joins worden doorgaans gebruikt wanneer u wilt weten wat niet is verkocht of algemener, wanneer iets niet is gebeurd.

Dit zijn de drie meest voorkomende typen joins. U kunt ook 'cross joins' en 'ongelijke joins' gebruiken, maar deze worden niet vaak gebruikt.

Het andere belangrijke punt over joins is dat 'relaties' en 'joins' niet hetzelfde zijn.

Een RELATIE is een set regels waarmee referentiële integriteit wordt bepaald: hoe u gegevens toevoegt en verwijdert.

Met een JOIN wordt bepaald hoe met uw query gegevens worden vergeleken.

Maar de twee kunnen op elkaar lijken.

Uw relaties kunnen bijvoorbeeld kanten hebben (een en veel) en uw joins kunnen ook kanten hebben (links en rechts), maar u gebruikt joins alleen in query’s en u kunt ze op manieren gebruiken die niet mogelijk zijn met relaties.

U kunt bijvoorbeeld joins verwijderen zonder nadelige gevolgen voor uw database, iets wat niet mogelijk is met een relatie.

U kunt ook joins toevoegen waar relaties niet bestaan.

U kunt bijvoorbeeld een veld in een tabel koppelen aan een veld in een query zolang deze velden overeenkomende of compatibele gegevenstypen hebben.

Nu weet u hoe u met joins kunt werken om een selectiequery met meerdere gegevensbronnen te maken. U kunt ook het type join instellen of wijzigen. En u begrijpt de overeenkomsten en verschillen tussen joins en relaties.

Uw Office-vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagents.

×