Administrer data med forespørgsler

Opret forespørgsler med ydre joinforbindelser

Din browser understøtter ikke video. Installer Microsoft Silverlight, Adobe Flash Player eller Internet Explorer 9.

Nogle gange vil du gerne se alle poster fra én tabel sammen med de matchende poster fra en anden tabel i dine forespørgsler. For at gøre dette skal du oprette ydre joinforbindelser.

Indre joinforbindelser viser kun data, når der er et matchende id i begge forbundne datakilder. Hvis du for eksempel vil have vist antallet af produkter og antal solgte produkter, opretter du en indre joinforbindelse mellem tabellerne Produkter og Ordredetaljer. Når du kører forespørgslen, returneres kun de produkter, der forekommer i ordrer, og dermed vises i begge tabeller.

I modsætning hertil returnerer ydre joinforbindelseralle data fra en datakilde og nogle data fra en anden tabel eller datakilden.

Hvis du for eksempel vil se, hvilke produkter, der ikke er solgt, skal du oprette en forespørgsel, der viser produkt-id fra tabellen Produkter og eventuelle matchende Ordre-id’er fra tabellen Ordredetaljer. Produkter, der ikke har tilsvarende poster i tabellen Ordredetaljer, returnerer produktnavnet uden en værdi i feltet Ordre-id.

Venstre ydre joinforbindelser og højre ydre joinforbindelser

Den tabel, der viser alle dens poster, i en ydre joinforbindelse, kaldes for basistabellen. Den tabel, der kun viser nogle (matchende) poster, kaldes den sekundære tabel.

Dialogboksen Joinegenskaber beskriver, hvad du får vist med de forskellige typer af joinforbindelser:

Skærmbillede af tre tabeller og deres egenskaber for joinforbindelse

Antag, at du har oprettet en forespørgsel for at vise, hvilke produkter dine kunder har købt. Dine outputfelter er Produktnavn, Ordre-id og Antal.

  1. Indre joinforbindelse. Medtag kun rækker (poster), hvor de samlede felter fra begge tabeller er ens, som for eksempel kun de produkter, der har en ordre tilknyttet.

  2. Venstre ydre joinforbindelse. Medtag alle poster fra tabellen under Venstre tabelnavn og kun de poster fra tabellen under Højre tabelnavn, hvor de sammenkædede felter er ens. f.eks. alle ordrer, men kun de mængder og produkt-id'er for de ordrer, der har tilknyttede produkter.

  3. Højre ydre joinforbindelse Medtag alle poster fra tabellen under Højre tabelnavn og kun de poster fra tabellen under Venstre tabelnavn, hvor de sammenkædede felter er ens. f.eks. alle produkterne, også når der er ikke er nogen ordre på dem, i hvilket tilfælde felterne Ordre-id og Antal så vil være tomme.

Som du kan se ud fra disse eksempler, er det vigtigt at vide, hvilken tabel, der vises til venstre, og hvilken der vises til højre. Dette kan faktisk være forskelligt fra, hvordan tabellerne er arrangeret i forespørgselsvinduet. For at forstå, hvilke data du får fra din forespørgsel, skal du nærlæse teksten i dialogboksen Joinegenskaber.

1. Tilføj datakilder

  • Vælg Opret > Forespørgselsdesign.

Tilføj alle de tabeller og forespørgsler du skal bruge som datakilder. Tag dig ikke af, hvis du glemmer en, du har stadig mulighed for at tilføje flere datakilder senere.)

Hvis Access opdager eller udleder dem, vises der måske relationer for datakilderne.

2. Tilføj en joinforbindelse

  • Hvis du ikke kan se en relation mellem kilderne så tilføj en joinforbindelse. Træk fra det relevante felt i en datakilde til det tilsvarende felt i en anden datakilde. Den tabel, du trækker fra, er den tabel, der vises til venstre i dialogboksen Joinegenskaber. Som standard opretter Access en indre joinforbindelse. Hvis du har brug for en ydre joinforbindelse, kan du ændre typen.

    skærmbillede af joinforbindelse mellem to tabeller

3. Rediger en joinforbindelse

  1. Dobbeltklik på den linje, der repræsenterer den joinforbindelse, du vil ændre.

  2. For at oprette en ydre joinforbindelse skal du vælge den anden eller tredje mulighed i dialogboksen Joinegenskaber. Vælg derefter OK.

    Husk at være opmærksom på hvilken tabel, der er den grundlæggende tabel – den, hvorfra alle poster vises.

    Skærmbillede af egenskaber for joinforbindelse med fremhævning af venstre tabelnavn

4. Fuldfør forespørgslen

Følg de sædvanlige trin for at oprette en forespørgsel: tilføj outputfelter, tilføj kriterier og kør eller gem din forespørgsel. Hvis du vil se hvordan, skal du se Opret grundlæggende forespørgsler.

Vil du have mere?

Opret grundlæggende forespørgsler

Kursus i Excel

Kursus i Outlook

Lad os se på, hvordan du bruger venstre og højre ydre joinforbindelser i en udvælgelsesforespørgsel.

Ydre joinforbindelser har sider – venstre og højre – og de returnerer ALLE data fra én tabel og kun data, der MATCHER, fra den anden. De er nyttige, når du vil vide, når noget IKKE er sket, såsom et bestemt element, der IKKE sælger, eller når studerende IKKE tilmelder sig et bestemt hold.

Så lad os nu tilføje en lille smule mere.

Den tabel, der returnerer ALLE data, kaldes "basistabellen", og den tabel, der returnerer MATCHES, kaldes den "sekundære tabel".

Hvad der er basistabellen, og hvad der er den sekundære tabel, afhænger af retningen af joinforbindelsen.

Hvis du bruger en højre ydre joinforbindelse, er tabellen på højre side basistabellen. Hvis du bruger en venstre ydre joinforbindelse, er tabellen på venstre side basistabellen.

I dialogboksen Joinegenskaber kan du bestemme, om du bruger en venstre eller højre ydre joinforbindelse. Vælg, og derefter skal du enten højre- eller dobbeltklikke på joinlinjen… derefter Joinegenskaber… vælg derefter den anden eller tredje mulighed.

Lad os prøve:

Vælg Forespørgselsdesign på fanen Opret. Her tilføjer vi tabellerne Ordredetaljer og Produkter.

Nu kan du se, at Access bruge en en til mange-relation som et MØNSTER for joinforbindelsen, og det betyder, at det er en indre joinforbindelse..

Vi tilføjer felterne Produktnavn og Mængde, og hvis vi kører forespørgslen, returnerer den kun data for produkter, der er bestilt.

Det ved vi, fordi der ville være blanke poster her, hvis forespørgslen returnerede data for ikke-bestilte produkter.

Tilbage i designvisning højre- eller dobbeltklikker vi på joinlinjen og vælger Joinegenskaber. Vælg den anden mulighed, og læg mærke til joinlinjen.

Pilen fortæller, at det er en ydre joinforbindelse, og den peger også på den sekundære tabel. Kør forespørgslen, sortér data fra mindst til størst. Nu ved du, hvilke produkter der ikke sælger.

Hvad sker der nu, hvis vi ændrer til en højre ydre joinforbindelse?

Vi foretager ændringen, … kører forespørgslen, … og får de samme resultater som for en indre joinforbindelse: ingen tomme poster.

I dialogboksen Joinegenskaber kan vi se, hvorfor.

Vi returnerer alle data fra tabellen Ordredetaljer, men kun MATCHES fra tabellen PRODUKTER. Med andre ord får du kun vist produkter, der har en tilsvarende ordre, og det er det samme resultat, som der returneres for en indre joinforbindelse.

Nu har du set, hvordan du bruger ydre joinforbindelser i en udvælgelsesforespørgsel, der bruger flere datakilder. Så tænk dine joinforbindelser igennem, og hvis du ikke får det ønskede resultat, kan du altid ændre dem.

Udvid dine færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×