Brug af felter med flere værdier i forespørgsler

Vigtigt: Denne artikel er maskinoversat. Se ansvarsfraskrivelsen. Du kan finde den engelske version af denne artikel her til din orientering.

I Microsoft Office Access 2007 kan du oprette et felt, der indeholder flere værdier, f.eks. en liste over personer, du tildelt en opgave. Felter med flere værdier kan bruges i forskellige situationer, f.eks. når du bruger Office Access 2007 til at arbejde med oplysninger, der er gemt på en Windows SharePoint Services 3.0-liste, og den pågældende liste indeholder et felt, der bruger en af de felttyper, der tillader flere værdier, i Windows SharePoint Services 3.0.

I denne artikel er der en beskrivelse af felter med flere værdier, og hvordan de bruges i forespørgsler.

Denne artikel indeholder

Hvad er et felt med flere værdier?

Introduktion til forespørgsler

Viser et felt med flere værdier i en forespørgsel

Viser de individuelle værdier i et felt med flere værdier

Om den bundne værdi og vist værdi i et opslagsfelt

Sådan får du vist den bundne værdi i en forespørgsel

Angivelse af simpel forespørgselskriterier for et felt med flere værdier

Søge efter mere end én værdi i et felt med flere værdier

Forstå påvirkningen af herunder en. Værdifelt på feltlisten.

Tælle, gruppering og brug af andre aggregatfunktioner

Bruge en tilføjelsesforespørgsel med et felt med flere værdier

Brug af en opdateringsforespørgsel med et felt med flere værdier

Brug af en sletteforespørgsel med et felt med flere værdier

Toppen af siden

Hvad er et felt med flere værdier?

Lad os antage, at du har en opgave, du vil tildele en af dine medarbejdere eller leverandører, men du finder ud af, at det er nødvendigt at tildele den til flere personer. I Office Access 2007 kan du oprette et felt med flere værdier, hvor du kan vælge personerne på en liste.

Felt med flere værdier

Når du klikker på kombinationsboksen, vises afkrydsningsfelter med angivelse af dine valg. Du kan markere eller fjerne markeringen af elementer på listen, og klik derefter på OK for at vælge indstillingerne.

En kombinationsboks for et felt med flere værdier

De valgte personer gemmes i feltet med flere værdier og vises som standard adskilt af kommaer.

Et felt med flere værdier med værdier, der er adskilt af komma

Formålet med felter med flere værdier er at gøre det let at understøtte de tilfælde, hvor du ønsker at markere og gemme flere valg uden at være nødt til at benytte et mere avanceret databasedesign. Felter med flere værdier er også vigtige for integrationen med Windows SharePoint Services, da SharePoint-lister også understøtter felter med flere værdier.

Du spekulerer måske på, hvorfor Office Access 2007 giver mulighed for at gemme flere værdier i ét felt, når de fleste relationsdatabasesystemer ikke tillader det. Svaret er, at databaseprogrammet i Office Access 2007 rent faktisk ikke gemmer værdierne i et enkelt felt. Selv om det for brugeren ser ud, som om det er et enkelt felt, gemmes og administreres værdierne i virkeligheden hver for sig i skjulte systemtabeller. Access-databaseprogrammet håndterer dette automatisk og adskiller dataene og bringer dem sammen igen for at præsentere dem i ét felt.

Rent teknisk benytter Access en mange-til-mange-relation til at implementere felter med flere værdier. Tag f.eks. en begivenhedstabel, hvor du tildeler en eller flere medarbejdere ansvaret for hver begivenhed. Du kunne så oprette et felt med flere værdier med navnet "Tildelt" til at tildele medarbejderne begivenheder. Relationen mellem begivenheder og medarbejdere er mange-til-mange. Det betyder, at du kan have mange medarbejdere knyttet til én begivenhed, og du kan også have én medarbejder knyttet til mange begivenheder.

Toppen af siden

Introduktion af forespørgsler

Det primære formål med databaser er at vise oplysninger: "Hvilket produkt sælger bedst? Hvem er vores bedste kunde? Hvorfor opfylder vi ikke vores salgsmål?" Alle disse er spørgsmål, som du kan stille til en veldesignet database. For at få svar fra en Access-database opretter du en forespørgsel og indtaster de nødvendige kriterier. Dataene i en forespørgsel kan komme fra en eller flere tabeller. Når Access har hentet de data, der besvarer dit spørgsmål, kan du få vist og analysere dataene. Når du har oprettet en forespørgsel, kan du bruge den som grundlag for en formular, en rapport, et diagram eller endda en anden forespørgsel.

I Office Access 2007 kan du anvende felter med flere værdier i bestemte forespørgsler og på bestemte måder. Du kan få vist et felt med flere værdier i en forespørgsel, få vist de enkelte værdier i et felt med flere værdier i en forespørgsel og udføre visse udvalgte aggregatfunktioner og -handlinger ved hjælp af felter med flere værdier.

Toppen af siden

Vise et felt med flere værdier i en forespørgsel

Når du får vist et felt med flere værdier i en forespørgsel, skal du beslutte, om du vil vise alle værdierne i ét felt adskilt af kommaer eller en separat række for hver værdi. Antag f.eks., at du har en opgavetabel med et TildeltTil-felt, som du bruger til at tildele opgaver til personer. Du kan oprette en forespørgsel med TildeltTil-feltet ved at benytte følgende fremgangsmåde:

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til designgitteret. I dette eksempel skal du trække feltet Titel og feltet med flere værdier med navnet TildeltTil til forespørgselsgitteret.

  7. Klik på Kør i gruppen Resultater under fanen Design.

Resultatet af forespørgslen ligner følgende figur - den ene kolonne viser opgavetitlen, og den anden viser feltet med flere værdier:

Forespørgselsresultat, der viser felterne Titel og TildeltTil

Når du opretter en forespørgsel i designvisning, genereres den tilsvarende SQL-sætning (Structured Query Language) automatisk. SQL er det forespørgselssprog, som benyttes i Access. Du kan skifte til SQL-visning for at få vist SQL-sætningen ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.Title, 
Issues.AssignedTo
FROM Issues;

Toppen af siden

Vise de enkelte værdier i et felt med flere værdier

Hvis du vil have vist feltet TildeltTil udvidet (nogle gange kaldet "gjort flad"), så hver af navnene eller værdierne i feltet vises på en række for sig, skal du angive egenskaben Værdi ved at føje strengen ".Værdi" til "TildeltTil" i rækken Felt som vist her i forespørgselsgitteret:

Forespørgselsgitter, der viser værdierne, der er tildelt felterne Titel og TildeltTil

Når du angiver TildeltTil i rækken Felt, vises alle værdierne i feltet med flere værdier på én række, når du kører forespørgslen, men hvis du bruger egenskaben Værdi (f.eks. TildeltTil.Værdi), vises feltet med flere værdier udvidet, så hver værdi vises på en række for sig selv som vist her i forespørgselsgitteret. Du kan oprette en forespørgsel for at få vist individuelle værdier ved at benytte følgende fremgangsmåde.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge (i dette eksempel feltet med flere værdier med navnet "TildeltTil.Værdi"), til forespørgselsgitteret.

  7. Klik på Kør i gruppen Resultater under fanen Design.

Forespørgselsresultat, der viser Titel og de individuelle værdier i TildeltTil

Når du opretter en forespørgsel i designvisning, genereres den tilsvarende SQL-sætning (Structured Query Language) automatisk. SQL er det forespørgselssprog, som benyttes i Access. Du kan skifte til SQL-visning for at få vist SQL-sætningen ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.Title, 
Issues.AssignedTo.Value
FROM Issues;

Toppen af siden

Forstå den bundne værdi og den viste værdi i et opslagsfelt

Et felt med flere værdier er et opslagsfelt. Et opslagsfelt er et felt i en tabel, hvis værdi hentes fra en anden tabel eller forespørgsel eller fra en værdiliste. Access har understøttet opslagsfelter med en værdi i flere versioner. Felter med flere værdier er en nyhed i Office Access 2007. Formålet med et opslagsfelt er at erstatte visningen af et tal, f.eks. et id (eller en anden fremmed nøgleværdi), med noget, der er mere sigende, f.eks. et navn. I stedet for at vise id'et for en kontaktperson, kan navnet på kontaktpersonen vises i Access. Kontakt-id'et er den bundne værdi. Den slås automatisk op i en kildetabel eller forespørgsel og erstattes med kontaktnavnet. Kontaktnavnet er den viste værdi.

Ligesom et opslagsfelt med en enkelt værdi, der har en vist værdi og en bundet værdi, har et felt med flere værdier viste værdier, der vises i brugergrænsefladen, og bundne værdier, der er gemt i tabellen. For hver indtastning i feltet med flere værdier slås den viste værdi op på grundlag af den bundne værdi.

Det betyder, at der ofte vises en vist værdi, der er slået op, som ikke er den samme som den bundne værdi, der er lagret i feltet. I eksemplet ovenfor, hvor feltet TildeltTil anvendes, er et sæt medarbejder-id-værdier fra forespørgslen Kontaktpersoner Udvidet gemt i feltet TildeltTil. Forespørgslen Kontaktpersoner Udvidet var valgt som rækkekilde, da feltet med flere værdier blev oprettet.

Disse medarbejder-id'er er de bundne værdier. Fordi Feltet TildeltTil er et opslagsfelt, viser Access dog sættet af opslagsværdier i forespørgselsresultatet, - i dette tilfælde kontaktnavnene. Kontaktnavnene er de viste værdier.

Dataark med viste værdier kontra dataark med bundne værdier

1. De viste værdier.

2. De bundne værdier.

Du kan se opslagsegenskaberne for et felt med flere værdier i designvisning ved at benytte følgende fremgangsmåde:

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Højreklik på den tabel, hvor feltet med flere værdier er gemt, i navigationsruden.

  4. Klik på Designvisning.

  5. Klik på feltet med flere værdier (f.eks. TildeltTil).

  6. Klik på fanen Opslag under Feltegenskaber.

Egenskaber for opslagsfelt med flere værdier

Det er vigtigt at forstå forskellen mellem den viste værdi og den bundne værdi for et opslagsfelt. Den viste værdi vises som standard automatisk i dataarkvisning. Den bundne værdi er dog den værdi, der er gemt, den værdi, der anvendes og forespørgselskriterier, og den værdi, der som standard anvendes af Access i joinforbindelser til andre tabeller.

Toppen af siden

Vise den bundne værdi i en forespørgsel

Den viste værdi vises som standard automatisk i dataarkvisning. Når du opretter en forespørgsel, kan du tilsidesætte denne funktion, så den bundne værdi vises i stedet. Du kan benytte følgende fremgangsmåde:

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til designgitteret. I dette eksempel skal du trække feltet Titel og feltet med flere værdier med navnet TildeltTil.Værdi til forespørgselsgitteret.

  7. Klik på feltet TildeltTil.Værdi i forespørgselsgitteret, så fokus flyttes til feltet.

  8. Klik på Egenskabsark i gruppen Vis/skjul under fanen Design.

  9. I egenskabsarket skal du under fanen Opslag vælge Tekstboks under egenskaben VisKontrolelement.

Egenskaben VisKontrolelement i forespørgselsdesign

Når du ændrer egenskaben VisKontrolelement til Tekstboks, deaktiverer du den normale funktion for opslagskolonner, så den bundne værdi vises i stedet for den viste værdi.

Bunden værdi vist i forespørgselsresultatet

Toppen af siden

Angive simple forespørgselskriterier for et felt med flere værdier

Du vil f.eks. se de opgaver, der er tildelt "Kelly Rollin". Du kan angive kriterier i rækken Kriterier i forespørgselsgitteret, men når du angiver kriterier for et opslagsfelt, skal du angive den bundne værdi, ikke den viste værdi. I dette tilfælde finder du frem til, at den bundne værdi for Kelly Rollin er 6. Det er den tilsvarende primære nøgle-værdi i forespørgslen Kontaktpersoner Udvidet for Kelly.

Sådan opretter du en forespørgsel, der viser de opgaver, der er tildelt Kelly:

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til forespørgselsgitteret. I dette eksempel skal du trække Titel til den første kolonne i gitteret. Træk derefter TildeltTil til den anden kolonne.

  7. Indtast 6 under TildeltTil i rækken Kriterier i forespørgselsgitteret. Bemærk, at du indtaster den bundne værdi, ikke den viste værdi.

    Forespørgselsgitter med kriterier i et felt med flere værdier

  8. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

Når du kører forespørgslen, vises resultatet i dataarkvisning. Bemærk, at forespørgslen kun returnerer rækker, hvor "Kelly Rollin" forekommer.

Forespørgselsresultat, hvor værdien TildeltTil indeholder 6

Når du opretter en forespørgsel i designvisning, genereres den tilsvarende SQL-sætning (Structured Query Language) automatisk. SQL er det forespørgselssprog, som benyttes i Access. Du kan skifte til SQL-visning for at få vist SQL-sætningen ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6));

Søge efter tekst i stedet for et id-nummer

Hvad nu, hvis du finder det besværligt at indtaste id-numre, og du foretrækker navnet "Kelly Rollin" som søgeværdi? For at det kan fungere, skal du have et felt i forespørgselsresultatet, der indeholder tekstnavnet. På den måde kan du søge efter "Kelly Rollin" i dette felt.

Du kan ikke bruge feltet TildeltTil.Værdi, fordi dets bundne værdi er et id, og du derfor skal indtaste et id for at sortere dette felt.

I dette eksempel findes feltet med kontaktpersonnavnet ikke i en tabel. Det findes i stedet i kildeforespørgslen, der leverer data til feltet TildeltTil med flere værdier. Du kan joinforbinde kildetabellen eller forespørgslen for feltet med flere værdier med den tabel, der indeholder feltet med flere værdier, hvis du vil medtage et felt (i dette eksempel navn på kontaktperson) fra kildetabellen eller forespørgslen i forespørgselsresultatet.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Forespørgsler i dialogboksen Vis tabel, og klik derefter på forespørgslen (i dette eksempel "Kontaktpersoner Udvidet"), der er kilden for feltet med flere værdier, og klik derefter på Tilføj.

  6. Klik på Luk.

  7. Træk de felter, du vil bruge til forespørgslen, til forespørgselsgitteret. I dette eksempel skal du trække Titel fra tabellen Opgaver til den første kolonne i gitteret. Træk derefter Kontaktpersonnavn fra forespørgslen Kontaktpersoner Udvidet til den anden kolonne, og fjern markeringen i afkrydsningsfeltet Vis. Træk derefter TildeltTil til den tredje kolonne.

  8. Hvis en joinlinje ikke vises mellem id-feltet i forespørgslen Kontaktpersoner Udvidet og feltet TildeltTil.Værdi ikke vises som angivet nedenfor, skal du klikke og trække fra id-feltet i forespørgslen Kontaktpersoner Udvidet til feltet TildeltTil.Værdi i tabellen Opgaver.

    Der vises en joinlinje.

    Hvis andre joinlinjer vises, skal du fjerne dem. Hvis du vil fjerne en joinlinje, skal du klikke for at fremhæve den og derefter trykke på Delete.

  9. I forespørgselsgitteret skal du under Kontaktpersonnavn indtaste "Kelly Rollin" i rækken Kriterier.

    Forespørgselsgitter med kriterier for TildeltTil indeholdende "Kelly Rollin"

  10. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

Når du kører forespørgslen, vises resultatet i dataarkvisning. Bemærk, at forespørgselsresultaterne kun viser de rækker, hvor "Kelly Rollin" forekommer. Denne teknik fungerer, fordi joinforbindelsen mellem id'et i kildetabellen eller forespørgslen og feltet TildeltTil returnerer en separat række for hver værdi i feltet med flere værdier, og hver række også indeholder feltet Kontaktpersonnavn med det fulde navn. Kontaktpersonnavn er et beregnet felt og ikke et opslagsfelt. Derfor er der ingen bunden værdi og ingen vist værdi. Der er kun én værdi: kontaktpersonnavnet. Du kan derfor indtaste den tilsvarende tekst, i dette tilfælde "Kelly Rollin."

Forespørgselsresultat med TildeltTil indeholdende "Kelly Rollin"

Når du opretter en forespørgsel i designvisning, genereres den tilsvarende SQL-sætning (Structured Query Language) automatisk. SQL er det forespørgselssprog, som benyttes i Access. Du kan skifte til SQL-visning for at få vist SQL-sætningen ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.Title, Issues.AssignedTo 
FROM [Contacts Extended] INNER JOIN Issues ON
[Contacts Extended].ID = Issues.AssignedTo.Value
WHERE ((([Contacts Extended].[Contact Name])=
"Kelly Rollin"));

Toppen af siden

Søge efter mere end én værdi i et felt med flere værdier

Nogle gange har du brug for at søge efter poster, der indeholder mere end én værdi. Du vil f.eks. se de opgaver, hvor både "Kelly Rollin" og "Lisa Miller" forekommer i feltet TildeltTil. Den bundne værdi for Kelly Rollin er 6, og den bundne værdi for Lisa Miller er 10. Hvis du vil angive flere kriterier for et felt med flere værdier, kan du bruge operatorerne AND og OR.

Benyt følgende fremgangsmåde for at oprette forespørgslen.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til forespørgselsgitteret. I dette eksempel skal du trække Titel til den første kolonne i gitteret. Træk derefter TildeltTil til den anden kolonne.

  7. I forespørgselsgitteret skal du under TildeltTil i rækken Kriterier skrive 6 And 10.

    Forespørgsel, der viser anvendelsen af AND i felt med flere værdier

  8. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

Når du kører forespørgslen, vises resultatet i dataarkvisning.

Forespørgselsresultat, der viser anvendelsen af AND i felt med flere værdier

Resultatet viser kun de opgaver, der er tildelt både Kelly Rollin og Lisa Miller. Når du opretter en forespørgsel i designvisning, genereres den tilsvarende SQL-sætning (Structured Query Language) automatisk. SQL er det forespørgselssprog, som benyttes i Access. Du kan skifte til SQL-visning for at få vist SQL-sætningen ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.Title, Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6
And (Issues.AssignedTo.Value)=10));

Brug af operatoren OR i stedet for operatoren AND

Nu vil du ændre forespørgslen til at vise de rækker, hvor enten "Kelly Rollin" eller "Lisa Miller" forekommer. Du kan redigere SQL-sætningen til at bruge operatoren OR i stedet for operatoren AND. Sætningen skal se sådan ud efter ændringen:

SELECT Issues.Title, Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6
Or (Issues.AssignedTo.Value)=10));

Når du kører forespørgslen, vises resultatet i dataarkvisning.

Forespørgsel, der bruger operatoren Or med et felt med flere værdier

Resultatet viser kun de opgaver, der er tildelt enten Kelly Rollin eller Lisa Miller.

Toppen af siden

Forstå virkningen af at medtage et .Værdi-felt på feltlisten

Det er vigtigt, at du forstår virkningen af at medtage et .Værdi-felt på listen over outputkolonner (SELECT-listen) i en forespørgsel. Når forespørgslen er behandlet, vises først et resultatsæt uden virkningen af en WHERE-delsætning eller filter. Filteret anvendes derefter på det første sæt. Det kan derfor være nyttigt at tænke på dette resultatsæt som det, der genereres først, og som derefter reduceres med filteret i WHERE-delsætningen. Se f.eks. dette eksempel:

SELECT Issues.Title, AssignedTo
FROM Issues
WHERE NOT AssignedTo.Value = 3;

Det første resultatsæt kan se sådan ud inden filtreringen:

Titel

TildeltTil

Opgave 1

David Hamilton, Eva Valverde

Opgave 2

Kathleen Gail Jensen, Kelly Rollin, Susan Burk, Lisa Miller

Opgave 3

Jesper Aaberg, Kelly Rollin, Eva Valverde, Tom Michaels

Opgave 4

Wei Yu, Lisa Miller

Opgave 5

David Hamilton, Kathleen Gail Jensen

Opgave 6

Sanjay Jacob, Kelly Rollin

Opgave 7

Jesper Aaberg, Susan Burk

Opgave 8

David Hamilton

Opgave 9

Kelly Rollin, Lisa Miller

Opgave 10

Eva Valverde, Tom Michaels

Filtreringsprocessen gennemgår derefter det første resultatsæt og udvælger de rækker, der ikke indeholder David Hamilton, hvis id er 3:

Titel

TildeltTil

Opgave 2

Kathleen Gail Jensen, Kelly Rollin, Susan Burk, Lisa Miller

Opgave 3

Jesper Aaberg, Kelly Rollin, Eva Valverde, Tom Michaels

Opgave 4

Wei Yu, Lisa Miller

Opgave 6

Sanjay Jacob, Kelly Rollin

Opgave 7

Jesper Aaberg, Susan Burk

Opgave 9

Kelly Rollin, Lisa Miller

Opgave 10

Eva Valverde, Tom Michaels

Prøv at se på et andet eksempel, som indeholder feltet .Værdi i feltlisten. Bemærk først, hvordan tilstedeværelsen af feltet .Værdi ændrer det første resultatsæt inden filtreringen:

SELECT Issues.Title, AssignedTo.Value
FROM Issues
WHERE NOT AssignedTo.Value = 3;

Det første resultatsæt ser sådan ud inden filtreringen:

Titel

TildeltTil.Værdi

Opgave 1

David Hamilton

Opgave 1

Eva Valverde

Opgave 2

Kathleen Gail Jensen

Opgave 2

Kelly Rollin

Opgave 2

Lisa Miller

Opgave 2

Susan Burk

Opgave 3

Eva Valverde

Opgave 3

Jesper Aaberg

Opgave 3

Kelly Rollin

Opgave 3

Tom Michaels

Opgave 4

Lisa Miller

Opgave 4

Wei Yu

Opgave 5

David Hamilton

Opgave 5

Kathleen Gail Jensen

Opgave 6

Kelly Rollin

Opgave 6

Sanjay Jacob

Opgave 7

Jesper Aaberg

Opgave 7

Susan Burk

Opgave 8

David Hamilton

Opgave 9

Kelly Rollin

Opgave 9

Lisa Miller

Opgave 10

Tom Michaels

Opgave 10

Eva Valverde

Filtreringsprocessen gennemgår nu det første resultatsæt og udvælger kun de rækker, der ikke indeholder David Hamilton, hvis id er 3:

Titel

TildeltTil.Værdi

Opgave 1

Eva Valverde

Opgave 2

Kathleen Gail Jensen

Opgave 2

Kelly Rollin

Opgave 2

Lisa Miller

Opgave 2

Susan Burk

Opgave 3

Eva Valverde

Opgave 3

Jesper Aaberg

Opgave 3

Kelly Rollin

Opgave 3

Tom Michaels

Opgave 4

Lisa Miller

Opgave 4

Wei Yu

Opgave 5

Kathleen Gail Jensen

Opgave 6

Kelly Rollin

Opgave 6

Sanjay Jacob

Opgave 7

Jesper Aaberg

Opgave 7

Susan Burk

Opgave 9

Kelly Rollin

Opgave 9

Lisa Miller

Opgave 10

Tom Michaels

Opgave 10

Eva Valverde

Hvis du forestiller dig resultatsættet før og efter anvendelsen af filteret, bliver det nemmere at planlægge forespørgselsresultatet korrekt.

Toppen af siden

Tælle, gruppere og bruge andre aggregatfunktioner

I nogle tilfælde kan du have brug for at udføre beregninger på grupper af værdier, der er gemt i et felt med flere værdier. Hvor mange opgaver er f.eks. tildelt hver person? Hvor mange personer er knyttet til hver opgave? Du kan udføre denne type beregning ved at bruge en aggregatfunktion i forespørgslen Totaler.

En aggregatfunktion udfører en beregning på et sæt værdier og returnerer derefter en enkelt værdi. Sum, Count og Avg er tre af de aggregatfunktioner, du kan bruge til at beregne totaler. Du kan beregne totaler for alle poster eller grupper af poster. Hvis du vil opsummere efter gruppe, skal du markere det eller de felter, der skal grupperes efter, i forespørgselsgitteret.

I følgende fremgangsmåde forklares det, hvordan du opretter en forespørgsel, der tæller det antal opgaver, der er tildelt hver person.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til forespørgselsgitteret. I dette eksempel skal du trække TildeltTil.Værdi til den første kolonne i gitteret. Træk derefter Titel til den anden kolonne.

  7. Klik på Totaler i gruppen Vis/skjul under fanen Design.

    Rækken Total vises i forespørgselsgitteret. Grupper efter vises som standard i cellen Total under hvert felt i forespørgslen.

  8. Klik på Count i rækken Total under Titel i forespørgselsgitteret.

  9. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

Når du designer en forespørgsel, kan du angive, hvilke felter der skal bruges til gruppering, og hvilke felter der skal bruges til totaler (beregninger). I dette eksempel blev feltet TildeltTil.Værdi brugt til gruppering, og feltet Titel blev brugt til beregning af en total. For de felter, du vil bruge til gruppering, skal du vælge Grupper efter i rækken Total. For de felter, du vil oprette en totalberegning i, skal du vælge en beregningstype (f.eks. Sum eller Avg). Når du bruger et felt med flere værdier til gruppering, skal du bruge feltet .Værdi. I dette eksempel kan du ikke bruge feltet TildeltTil til gruppering - du skal bruge feltet TildeltTil.Værdi. Du skal også bruge feltet .Værdi, når du bruger et felt med flere værdier til sortering.

Bemærk: Når du bruger et felt med flere værdier til gruppering, skal du bruge feltet .Værdi. Når du bruger et felt med flere værdier til gruppering, skal du bruge feltet .Værdi.

Når du kører forespørgslen, vises resultatet i dataarkvisning.

En forespørgsel, der tæller antallet af opgaver, der er tildelt hver person

Hvis du vil se SQL-sætningen for denne forespørgsel, skal du skifte til SQL-visning ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.AssignedTo.Value, 
Count(Issues.Title) AS CountOfTitle
FROM Issues
GROUP BY Issues.AssignedTo.Value;

Nu ønsker du at vide, hvor mange personer der er knyttet til hver opgave. Du kan gruppere efter Titel og vælge Count som beregning for feltet med flere værdier. Benyt følgende fremgangsmåde for at oprette forespørgslen.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på den tabel, der indeholder feltet med flere værdier (i dette eksempel: "Opgaver"), i dialogboksen Vis tabel, og klik derefter på Tilføj.

  5. Klik på Luk.

  6. Træk de felter, du vil bruge til forespørgslen, til forespørgselsgitteret. I dette eksempel skal du trække Titel til den første kolonne i gitteret. Træk derefter TildeltTil til den anden kolonne.

  7. Klik på Totaler i gruppen Vis/skjul under fanen Design.

    Rækken Total vises i forespørgselsgitteret. Grupper efter vises som standard i cellen Total under feltet Titel forespørgslen. Udtryk vises som standard i cellen Total under feltet TildeltTil. Det skyldes, at du ikke kan udføre en Grupper efter-handling på et felt med flere værdier. Det kan du kun gøre i et .Værdi-felt med flere værdier.

  8. Klik på Count i rækken Total under TildeltTil i forespørgselsgitteret.

  9. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

Når du kører forespørgslen, vises resultatet i dataarkvisning.

Forespørgselsresultat, der viser antallet af personer pr. opgave

Hvis du vil se SQL-sætningen for denne forespørgsel, skal du skifte til SQL-visning ved at benytte følgende fremgangsmåde.

  1. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  2. Klik på SQL-visning.

SQL-sætningen ser sådan ud:

SELECT Issues.Title, 
Count(Issues.AssignedTo) AS CountOfAssignedTo
FROM Issues
GROUP BY Issues.Title;

Bemærk: I denne SQL SELECT-sætning er det ligegyldigt, om du bruger Count(Issues.AssignedTo) eller Count(Issues.AssignedTo.Value) - resultatet er det samme.

Toppen af siden

Brug af en tilføjelsesforespørgsel med et felt med flere værdier

Du kan indsætte en enkelt værdi i et felt med flere værdier ved hjælp af en indsættelsesforespørgsel. Du vil f.eks. føje "Kelly Rollin" til feltet TildeltTil med flere værdier for en opgave. Du skal først finde frem til den primære nøgle-værdi for opgaven og for kontaktposten for Kelly. Vi antager, at værdien er 10 for opgaven og 6 for Kelly.

I følgende fremgangsmåde vises det, hvordan du opretter forespørgslen.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

    Billede af Access-båndet

  4. Klik på Luk i dialogboksen Vis tabel.

  5. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  6. Klik på SQL-visning.

  7. Skriv følgende SQL-sætning i SQL-visning:

    INSERT INTO Issues ( AssignedTo.[Value] )
    VALUES (6)
    WHERE ID = 10;
  8. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

    Du bliver evt. bedt om at bekræfte, om den markerede række skal tilføjes. Klik på Ja for at indsætte række, eller klik på Nej for at annullere.

Kelly er nu anført i feltet TildeltTil for den pågældende opgave. Det er den eneste udgave af indsættelsesforespørgslen, der fungerer med et felt med flere værdier.

Bemærk: En tilføjelsesforespørgsel er en forespørgsel, som du kan bruge til at føje poster fra en tabel til en anden eksisterende tabel. I Office Access 2007 kan du ikke bruge en tilføjelsesforespørgsel, der henviser til en tabel, der indeholder et felt med flere værdier. Følgende forespørgsel er f.eks. ikke gyldig:

INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;

Toppen af siden

Brug af en opdateringsforespørgsel med et felt med flere værdier

Du kan bruge en opdateringsforespørgsel til at ændre værdierne i eksisterende poster. Når du bruger en opdateringsforespørgsel til at opdatere en tabel, der indeholder felter med flere værdier, kan du ændre en enkelt værdi i et felt med flere værdier til en anden værdi. Du vil f.eks. opdatere feltet TildeltTil med flere værdier for en bestemt opgave. Du vil f.eks. erstatte "Kelly Rollin" med "Lisa Miller". Du skal finde frem til den primære nøgle-værdi for opgaven og for kontaktposterne for Kelly og Lisa. Vi antager, at 8 er værdien for opgaven, 6 er værdien for Kelly, og 10 er værdien for Lisa.

I følgende fremgangsmåde vises det, hvordan du opretter forespørgslen.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

  4. Klik på Luk i dialogboksen Vis tabel.

  5. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  6. Klik på SQL-visning.

  7. Skriv følgende SQL-sætning i SQL-visning:

    UPDATE Issues 
    SET Issues.AssignedTo.Value = 10
    WHERE (((Issues.AssignedTo.Value)=6)
    AND ((Issues.ID)=8));

    Bemærkninger: 

    • Du bør altid medtage en WHERE-delsætning, der kun identificerer de poster, du vil opdatere. Ellers kommer du til at opdatere poster, som du ikke ønsker at ændre. En opdateringsforespørgsel, der ikke indeholder en WHERE-delsætning, ændrer alle rækker i tabellen.

    • Du kan angive en værdi, der skal ændres.

  8. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

    Du bliver evt. bedt om at bekræfte, om posten skal opdateres. Klik på Ja for at opdatere rækken, eller klik på Nej for at annullere.

Lisa Miller vises nu i stedet for Kelly Rollin i feltet TildeltTil for den pågældende opgave.

Toppen af siden

Brug af en sletteforespørgsel med et felt med flere værdier

Du kan bruge en sletteforespørgsel til at fjerne poster fra en tabel. Når du arbejder med en tabel, der indeholder et felt med flere værdier, kan du bruge en sletteforespørgsel til at slette poster, der indeholder en bestemt værdi i et felt med flere værdier eller slette en bestemt værdi i et felt med flere værdier i alle poster i tabellerne.

Du vil f.eks. fjerne "Kelly Rollin" fra feltet TildeltTil i hele tabellen. Benyt følgende fremgangsmåde for at oprette forespørgslen.

  1. Klik på Microsoft Office-knappen Office-knapflade , og klik derefter på Åbn.

  2. Vælg og åbn databasen i dialogboksen Åbn.

  3. Klik på Forespørgselsdesign i gruppen Andet under fanen Opret.

  4. Klik på Luk i dialogboksen Vis tabel.

  5. Klik på pilen under Vis i gruppen Resultater under fanen Design for at få vist menuen Vis.

  6. Klik på SQL-visning.

  7. Skriv følgende SQL-sætning i SQL-visning:

    DELETE Issues.AssignedTo.Value
    FROM Issues
    WHERE (((Issues.AssignedTo.Value)=6));
  8. Klik på Kør i gruppen Resultater under fanen Design for at køre forespørgslen.

    Du bliver evt. bedt om at bekræfte, om posterne skal slettes. Klik på Ja for at slette posterne, eller klik på Nej for at annullere.

Følgende eksempelforespørgsel sletter ikke poster fra tabellen Opgaver. Den sletter en værdi fra feltet TildeltTil med flere værdier i hver post, hvor værdien forekommer. Hvis du vil slette poster fra tabellen Opgaver, skal du ikke angive et felt efter DELETE-delsætningen i SQL-sætningen. Hvis du f.eks. vil slette alle opgaver, hvor "Kelly Rollin" vises blandt de personer, opgaven er tildelt, skal du skrive følgende SQL-sætning:

DELETE 
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6));

Bemærk: Vær omhyggelig, når du sletter poster ved hjælp af en sletteforespørgsel. Poster kan ikke gendannes, når de er slettet.

Toppen af siden

Bemærk: Ansvarsfraskrivelse for maskinoversættelse: Denne artikel er blevet oversat af et computersystem uden menneskelig indgriben. Microsoft tilbyder disse maskinoversættelse for at hjælpe ikke-engelsktalende brugere til at kunne nyde indhold om Microsofts produkter, tjenester og teknologier. Da artiklen er maskinoversat, kan den indeholde forkerte ord eller syntaks- eller grammatikfejl.

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.

×