Avatar billede Yensen Nybegynder
11. januar 2010 - 19:59 Der er 4 kommentarer

Forespørgsel i access database

Jeg har lavet en simpel database der fortæller mig hvilke kurser mine medarbejdere har gennemført.
Den består af: en medarbejder-tabel, en kursustabel (hvert kursus er navngivet og nummereret) og en kursusregistreringstabel.

Jeg vil nu gerne vide hvilke medarbejdere der IKKE har gennemført kursus nr. 8?
Jeg har prøvet med "not 8", men så får jeg en tabel med en oversigt over navne på kursister og kursusnumre på alle gennemførte kurser (undtagen 8). Det vil sige at mit eget navn for eksempel kan stå 3 gange på listen, fordi jeg har gennemført kursus nr. 9, 10 og 11.
Ydermere får jeg ikke navnene på dem der slet ikke har gennemført nogen kurser, men kun på dem, der er registreret i kursusregistreringstabellen.
Hvad skal jeg gøre?

VH Yensen
Avatar billede mugs Novice
11. januar 2010 - 20:25 #1
Jeg antager at kursusregistreringstabel indeholder både kursusnr og en form for medarbejder id svarende til et medarbejderid medarbejder-tabellen. Du må så kunne kalde disse 2 tabeller ind i forespørgslen og joine medarbejderid med en een til mange relation. Derefter et kriterie Not 8 i kursusregistreringstabellens id over gennemgåede kurser.

Du er også velkommen til at sende din db i ACC 2000 som en .zip fil til:

mugs snabelting mail.dk

så ser jeg på den.
Avatar billede terry Ekspert
11. januar 2010 - 20:26 #2
A bit more information on the tables might be usefull (fields and relationships)
Avatar billede fdata Forsker
11. januar 2010 - 21:25 #3
Du skal nok udarbejde en lidt mere avanceret model.

1. Opret en forespørgsel med navnene på alle de kursister, der har gennemført kursus 8 og gem den (evt. som Q_Kursus8)

2. Opret en forspørgsel med to "tabeller": din medarbejder-tabel og den nye Q_Kursus8

3. Træk nu med musen fra medarbejdernavnet i medarbejdertabellen og over på medarbejdernavnet i Q_Kursus8. Access viser en streg.

4. Dobbeltklik på stregen og vælg at se alle poster fra medarbejdertabellen (det er vist mulighed nr. 2)

5. Træk medarbejdernavnene fra de to tabeller ned i forespørgselsgitteret

6. Hvis du fyrer forespørgslen af, vil du se at der står navne i begge kolonner for de kursister, der har gennemført kursus 8. Alle andre er tommme i kolonne 2. Det er altså de tomme, vi skal have fat i.

7. Gå tilbage til designmode. I linjen Kriterie under feltet medarbejdernavnet fra Q_Kursus8 skriver du "Is Null" (uden anførselstegn).

8. Fyr den så af igen. Nu burde du kun se medarbejdere, der ikke har gennemført kursus 8.

Det er muligt, at du bruger medarbejdernr, initialer el.lign. i stedet for medarbejderens navn; men jeg håber, du forstår fremgangsmåden.
Avatar billede Yensen Nybegynder
12. januar 2010 - 22:11 #4
Hej Mugs og Fdata

Tak for gode svar, jeg skal lige have en dag med ro på arbejde til at prøve begge fremgangsmåder; jeg kommer med en tilbagemelding inden fredag.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester