Når du vil markere bestemte data fra en eller flere kilder, kan du bruge en udvælgelsesforespørgsel. En udvælgelsesforespørgsel hjælper dig med kun at hente de ønskede data, og kan også kombinere data fra flere datakilder. Du kan bruge tabeller og andre udvælgelsesforespørgsler som datakilder for en udvælgelsesforespørgsel. Dette emne indeholder en oversigt over udvælgelsesforespørgsler og angiver trin til at oprette en udvælgelsesforespørgsel ved hjælp af guiden Forespørgsel eller i designvisning.
Hvis du vil bruge Northwind-eksempeldatabasen til at få mere at vide om, hvordan forespørgsler fungerer, kan du læse Introduktion til forespørgsler.
I denne artikel
- Oversigt
- Brug guiden Forespørgsel til at oprette en udvælgelsesforespørgsel
- Opret en forespørgsel ved at arbejde i designvisning
Oversigt
Når du vil bruge data, vil du sjældent bruge alle data fra én tabel. Hvis du f.eks. vil bruge data fra en tabel over kontakter, vil du normalt se på en bestemt post, eller måske bare telefonnummeret. Nogle gange vil du kombinere data fra mere end én tabel, f.eks. kombinere Kundeoplysninger med Ordreoplysninger. For at vælge de data, du vil bruge, skal du bruge en udvælgelsesforespørgsel.
En udvælgelsesforespørgsel er et databaseobjekt, der viser oplysninger i dataarkvisning. En forespørgsel gemmer ikke data, den viser data, der er gemt i tabeller. En forespørgsel kan vise data fra én eller flere tabeller, fra andre forespørgsler eller fra en kombination af de to.
Fordelene ved at bruge en forespørgsel
Med en forespørgsel kan du:
Få vist data udelukkende fra felterne, du er interesseret i at få vist. Når du åbner en tabel, kan du se alle felterne. En forespørgsel er en praktisk måde at gemme et udvalg af felter på.
Bemærk
En forespørgsel peger kun på data, den lagrer ikke data. Når du gemmer en forespørgsel, gemmer du ikke en kopi af dataene.
Kombiner data fra flere datakilder. En tabel viser som regel kun data, som lagres i den. En forespørgsel lader dig frit vælge felter fra forskellige kilder og angive, hvordan oplysningerne skal kombineres.
Brug udtryk som felter. Du kan f.eks. bruge funktionen Dato som et felt, eller du kan bruge funktionen Format sammen med et felt til at styre måden, dataene fra feltet formateres på i forespørgselsresultaterne.
Få vist de poster, der opfylder de kriterier, du angiver. Når du åbner en tabel, kan du se alle posterne. En forespørgsel er en praktisk måde at gemme et udvalg af poster.
Grundlæggende trin til at oprette en udvælgelsesforespørgsel
Du kan oprette en udvælgelsesforespørgsel ved hjælp af guiden Forespørgsel eller ved at arbejde i designvisning. Nogle designelementer er ikke tilgængelige, når du bruger guiden, men du kan tilføje disse elementer senere ved hjælp af designvisning. Selvom de to metoder er forskellige, er de grundlæggende trin i bund og grund de samme:
- Vælg de tabeller eller forespørgsler, du vil bruge som datakilder.
- Angiv hvilke felter, du vil medtage fra datakilder.
- Du kan også angive kriterier for at begrænse antallet af poster, som forespørgslen returnerer.
Når du har oprettet en udvælgelsesforespørgsel, skal du køre den for at se resultaterne. Hvis du vil køre en udvælgelsesforespørgsel, skal du åbne den i dataarkvisning. Hvis du gemmer forespørgslen, kan du f.eks. genbruge den, hver gang du har brug for en datakilde til en formular, rapport eller en anden forespørgsel.
Brug guiden Forespørgsel til at oprette en udvælgelsesforespørgsel
Du kan bruge guiden Forespørgsel til automatisk at oprette en udvælgelsesforespørgsel. Når du bruger guiden, har du mindre kontrol over detaljerne i forespørgselsdesignet, men forespørgslen oprettes som regel hurtigere, end hvis du ikke bruger guiden. Desuden kan guiden opfange nogle enkle designfejl og tilskynde dig til at udføre en anden handling.
Inden du går i gang
Hvis du bruger felter fra datakilder, der ikke er relateret til hinanden, spørger guiden Forespørgsel, om du vil oprette relationer. Guiden åbner vinduet Relationer for dig, men du skal genstarte guiden, hvis du redigerer relationer. Inden du kører guiden, skal du derfor overveje at oprette relationer, som din forespørgsel har brug for.
Du kan finde flere oplysninger om at oprette tabelrelationer i vejledningen i tabelrelationer.
Brug guiden Forespørgsel
Vælg guiden Forespørgsel i gruppen Forespørgsler under fanen Opret.
Vælg guiden Simpel forespørgsel i dialogboksen Ny forespørgsel, og vælg derefter OK.
Derefter skal du tilføje felter. Du kan tilføje op til 255 felter fra op til 32 tabeller eller forespørgsler.
For hvert felt, skal du udføre disse to trin:Vælg den tabel eller forespørgsel, der indeholder feltet, under Tabeller/forespørgsler.
Under Tilgængelige felter skal du dobbeltklikke på feltet for at føje det til listen Valgte felter. Hvis du vil tilføje alle felterne til forespørgslen, skal du vælge knappen med de dobbelte højrepile (>>).
Når du har tilføjet alle de ønskede felter, skal du vælge Næste.
Hvis du ikke har tilføjet nogen talfelter (felter, der indeholder numeriske data), kan du gå videre til trin 9. Hvis du har tilføjet talfelter, bliver du spurgt, om du ønsker, at forespørgslen skal vise detaljer eller opsummerede data.
Gør et af følgende:Hvis du vil se individuelle poster, skal du vælge Detaljer og derefter vælge Næste. Spring til trin 9.
Hvis du vil have vist opsummerede numeriske data, f.eks. gennemsnit, skal du vælge Opsummering og derefter Opsummeringsindstillinger.
I dialogboksen Opsumeringsindstillinger skal du angive, hvilke felter der skal opsummeres, og hvordan du vil have dataene opsummeret. Der vises kun talfelter.
For hvert tal skal du vælge en af følgende funktioner:- Sum Forespørgslen viser summen af alle værdierne i feltet.
- Gns Forespørgslen viser gennemsnittet af alle værdierne i feltet.
- Min Forespørgslen viser den mindste værdi i feltet.
- Max Forespørgslen viser den største værdi i feltet.
Hvis du ønsker, at forespørgselsresultatet skal vise en optælling af posterne i en datakilde, skal du vælge afkrydsningsfeltet Tæl poster i datakildenavn.
Vælg OK for at lukke dialogboksen Opsummeringsindstillinger .
Hvis du ikke føjede et felt med dato/klokkeslæt til forespørgslen, kan du gå videre til trin 9. Hvis du har føjet et dato-/klokkeslætsfelt til forespørgslen, spørger guiden Forespørgsel, hvordan du vil gruppere datoværdierne. Antag for eksempel, at du har tilføjet et talfelt ("Pris") og et felt med dato/klokkeslæt ("Transaction_Time") til forespørgslen, og derefter har angivet i dialogboksen Opsummeringsindstillinger , at du gerne vil have vist gennemsnitsværdien af talfeltet "Kurs". Fordi du tilføjede et felt til dato/tid, ville du kunne beregne opsummeringsværdier for hver enkel dato/klokkeslæt-værdi, for hver dag, for hver måned, for hvert kvartal eller for hvert år.
Vælg det tidsinterval, du ønsker at bruge til at gruppere dato/tidsværdier, og vælg derefter Næste.
Bemærk
I designvisning kan du bruge et udtryk til at gruppere efter et hvilket som helst tidsinterval, du ønsker, men guiden giver kun disse valgmuligheder.
Giv forespørgslen en titel på sidste side i guiden, angiv, om du vil åbne eller redigere forespørgslen, og vælg derefter Udfør.
Hvis du vælger at åbne forespørgslen, viser forespørgslen de markerede data i dataarkvisning. Hvis du vælger at redigere forespørgslen, åbner forespørgslen i designvisning.
Opret en forespørgsel ved at arbejde i designvisning
Du kan bruge designvisning til manuelt at oprette en udvælgelsesforespørgsel. Når du bruger designvisning, har du mere kontrol over detaljerne i forespørgselsdesignet, men det er nemmere at lave designfejl, og det kan tage længere tid end ved hjælp af guiden.
Opret en forespørgsel
- Trin 1: Tilføj datakilder
- Trin 2: Sammenkæd relaterede datakilder
- Trin 3: Tilføj outputfelter
- Trin 4: Angiv kriterier
- Trin 5 Opsummer data
- Trin 6: Få vist resultaterne
Trin 1: Tilføj datakilder
Når du bruger designvisning, til at tilføje datakilder, skal du tilføje datakilder og felter i separate trin. Du kan dog altid tilføje flere datakilder senere, hvis du vil.
Vælg Forespørgselsdesign i gruppen Forespørgsler under fanen Opret.
Dobbeltklik på hver datakilde, du vil bruge, eller vælg hver datakilde, og vælg derefter Tilføj.
Automatiske joinforbindelser
Når du tilføjer datakilderne, hvis kilderne har relationer defineret mellem dem, føjes disse relationer automatisk til forespørgslen som joinforbindelser. Joinforbindelser angiver, hvordan data fra relaterede kilder bør kombineres. Access opretter også automatisk en joinforbindelse mellem to tabeller, hvis de har felter, der har kompatible datatyper, og ét felt er en primær nøgle.
Du ønsker muligvis at justere de joinforbindelser, som Access opretter. Access bestemmer, hvilken type joinforbindelse, der skal oprettes, baseret på relationen som joinforbindelsen repræsenterer. Hvis Access opretter en joinforbindelse, men der ikke er nogen defineret relation, opretter Access en indre joinforbindelse.
Hvis Access automatisk opretter korrekte joinforbindelser, når du tilføjer datakilderne, kan du gå videre til Trin 3: Tilføj outputfelter.
Brug den samme datakilde flere gange
I nogle tilfælde kan du ønske at sammenkæde to kopier af den samme tabel eller forespørgsel, en såkaldt selv-join-forespørgsel, som kombinerer poster fra den samme tabel, når der er tilsvarende værdier i de joinforbundne felter. Hvis du f.eks. har tabellen Medarbejdere, hvor feltet RapportererTil under hver medarbejders post viser id'et for hver medarbejders leder i stedet for et navn. Du kan bruge en selv-joinforbindelse til at få vist lederens navn i hver medarbejders post i stedet.
Når du tilføjer en datakilde endnu en gang, føjer Access _1 til navnet på forekomst nummer 2. Hvis du for eksempel tilføjede tabellen Medarbejdere to gange, kaldes den anden forekomst Medarbejdere_1.
Trin 2: Sammenkæd relaterede datakilder
Hvis de datakilder, du føjer til en forespørgsel, allerede har relationer, opretter Access automatisk en indre joinforbindelse for hver relation. Hvis referentiel integritet gennemtvinges, viser Access også et "1" oven over joinlinjen for at vise, hvilken tabel der er på "én"-siden af en én-til-mange-relation og et uendelighedssymbol (∞), så du kan se, hvilken tabel der er på "mange"-siden.
Hvis du føjer forespørgsler til forespørgslen, og ikke har oprettet relationer mellem disse forespørgsler, opretter Access ikke automatisk joinforbindelser mellem disse forespørgsler eller mellem forespørgsler og tabeller, der ikke er relaterede. Hvis Access ikke opretter joinforbindelser, når du tilføjer datakilder, bør du normalt tilføje dem selv. Datakilder, der ikke er forbundet til en anden datakilde kan give problemer med resultaterne af forespørgslen.
Det er også muligt du vil ændre typen af en joinforbindelse fra en indre joinforbindelse til en ydre joinforbindelse, så forespørgslen indeholder flere poster.
Tilføj en joinforbindelse
For at tilføje en joinforbindelse skal du trække ét felt fra en datakilde til et tilsvarende felt i en anden datakilde.
Access viser en linje mellem de to felter for at vise, at en joinforbindelse er blevet oprettet.
Rediger en joinforbindelse
Dobbeltklik på den joinforbindelse, du vil ændre.
Dialogboksen Joinegenskaber vises.
Gennemgå de tre indstillinger i dialogboksen Joinegenskaber.
Klik på den indstilling, du vil bruge, og klik derefter på OK.
Når joinforbindelserne er klar, skal du tilføje outputfelter – felter, der indeholder data, du vil have i forespørgselsresultaterne.
Trin 3: Tilføj outputfelter
Du kan nemt tilføje et felt fra enhver af de datakilder, du har tilføjet i trin 1.
For at tilføje et felt skal du trække feltet fra en datakilde i den øverste rude af vinduet forespørgselsdesign ned til rækken Felt i designgitteret, i ruden nederst i vinduet forespørgselsdesign.
Når du tilføjer et felt på denne måde, indsætter Access automatisk rækken Tabel i designgitteret for at afspejle feltets datakilde.Tip
Hvis du hurtigt vil tilføje alle felter ned til Felt-rækken i forespørgselsdesigngitteret, skal du dobbeltklikke på tabel- eller forespørgselsnavnet i den øverste rude for at markere alle felterne i kilden, og derefter trække dem alle ned til designgitteret på samme tid.
Brug et udtryk som et outputfelt
Hvis du vil udføre beregninger eller bruge en funktion til at producere forespørgselsresultater, kan du bruge et udtryk som et outputfelt. Et udtryk kan bruge data fra alle datakilderne i forespørgslen såvel som funktioner, som f.eks. Formatér eller InStr, og kan også indeholde konstanter og matematiske operatører.
I en tom kolonne i forespørgselsgitteret skal du højreklikke på rækken Felt og klikke på Zoom i genvejsmenuen.
Skriv eller indsæt dit udtryk i feltet Zoom . Der skal være kolon efter udtrykket med det navn, du vil bruge til outputudtryk. Hvis du f.eks. ønsker at navngive udtrykket "Senest opdateret", skal du starte dit udtryk med Senest opdateret:.
Bemærk
Du kan gøre en lang række forskellige ting ved brug af udtryk. En komplet forklaring af udtryk ligger uden for omfanget af denne artikel. Du kan få mere at vide om at oprette et udtryk i artiklen Opret et udtryk.
Trin 4: Angiv kriterier
Dette trin er valgfrit.
Du kan bruge kriterier til at begrænse antallet af poster, der returneres af forespørgslen på grundlag af om feltværdierne opfylder de kriterier, du angiver.
Angiv kriterier for et outputfelt
- I forespørgselsdesigngitteret i rækken Kriterier for det felt, der indeholder værdier, du vil begrænse, skal du skrive et udtryk, som feltværdier skal opfylde, for at de medtages i resultaterne. Hvis du f.eks. vil begrænse en forespørgsel, så det kun er de poster, hvor værdien af feltet By er Las Vegas, skal du skrive Las Vegas i rækken Kriterier under feltet.
For at se mange eksempler på forespørgselskriterier for forskellige datatyper, kan du læse artiklen Eksempler på forespørgselskriterier. - Angiv alternative kriterier i rækken Eller under rækken Kriterier.
Hvis du angiver forskellige kriterier, kan en feltværdi opfylde en hvilken som helst af de angivne kriterier, for at den medtages i forespørgselsresultatet.
Flere feltkriterier
Du kan bruge kriterier med flere felter. Når du gør, skal alle kriterier i en given Kriterier- eller Eller-række være sande, for at posten bliver medtaget.
Angiv kriterier ved hjælp af et felt, du ikke vil have vist resultaterne af.
Du kan tilføje et felt til dit forespørgselsdesign uden at medtage feltets data i forespørgselsresultatet. Du gør dette, hvis du vil bruge feltets værdier til at begrænse forespørgselsresultaterne, men ikke vil have vist feltværdierne.
- Tilføj feltet til designgitteret.
- Fjern markeringen i afkrydsningsfeltet for rækken Vis for feltet.
- Angiv kriterier efter behov for et outputfelt.
Trin 5: Opsummer data
Dette trin er valgfrit.
Du vil formentligt gerne opsummere data, især hvis dine data er numeriske. For eksempel vil du måske gerne se gennemsnitsprisen eller det samlede salg.
Hvis du vil opsummere data i en forespørgsel, skal du bruge rækken I alt. Som standard vises rækken I alt ikke i designvisning.
- Mens forespørgslen er åben i designvisning, skal du klikke på Totaler på fanen Forespørgselsdesign i gruppen Vis/skjul.
Access viser rækken I alt i forespørgslens designgitter. - Vælg den funktion, du vil bruge, på listen i rækken I alt for hvert felt, som du vil opsummere. De tilgængelige funktioner afhænger af feltets datatype.
Du kan få mere at vide om funktionaliteten af rækken Total i forespørgsler i artiklen Vise kolonnetotaler i et dataark ved hjælp af en række med totaler.
Trin 6: Få vist resultaterne
Klik på Kør på fanen Forespørgselsdesign for at se forespørgselsresultaterne. Access viser resultaterne af forespørgslen i dataarkvisning.
Hvis du vil foretage yderligere ændringer af forespørgslen, skal du klikke påHjem-visning>>i designvisning for at skifte tilbage til designvisning.
Du kan ændre dine felter, udtryk eller kriterier og køre forespørgslen igen, indtil den returnerer de data, du ønsker.