Avatar billede balk Nybegynder
09. november 2005 - 16:56 Der er 7 kommentarer og
1 løsning

Omvendt forespørgsel

Hej eksperter

Jeg har et spørgsmål omkring en forespørgsel hvor jeg søger på et kriterie der "ikke findes". Jeg har en simpel medarbejder DB der indeholder en tabel over medarbejderinformationer og en tabel og uddannelser gennemgået (i denne tabel oprettes en post for hver gang en uddannelse gennemgås af en medarbejder). De to tabeller er knyttet på initialer.

Hvordan konstruerer jeg en forespørgsel hvor jeg vil have initialerne på de medarbejdere der IKKE har modtaget en bestemt uddannelse.

På forhånd tak.
Avatar billede mugs Novice
09. november 2005 - 17:05 #1
Under feltet med udannelser indsætter du kriteriet:

Not like "uddannelsen"
Avatar billede ldanielsen Nybegynder
09. november 2005 - 22:14 #2
Jeg er ikke sikker på at det er det du søger. Jeg vil nok bruge en Subquery

SELECT Medarbejder.MedarbejderNavn FROM Medarbejder WHERE
Medarbejder.MedarbejderInitialer NOT IN
(SELECT Uddannelse.MedarbejderInitialer FROM Uddannelse WHERE Uddannelse.UddannelseID = 3);

Giver dem der ikke har taget uddannelse 3
Avatar billede balk Nybegynder
10. november 2005 - 09:14 #3
Ved at bruge Not like "uddannelsen" får jeg bare dem som har andre uddannelser, og ikke dem som mangler den valgte uddannelse.
Avatar billede ldanielsen Nybegynder
10. november 2005 - 09:39 #4
Så prøv min :o)
Avatar billede balk Nybegynder
10. november 2005 - 09:41 #5
ldanielsen din forespørgsel virkede og samtidig lærte jeg Subquery's =o)
Mange tak, send et svar for points.
Avatar billede ldanielsen Nybegynder
10. november 2005 - 10:32 #6
Svar, og tak for det :o)

PS: Hvis du vil have en liste med dem der HAR taget en uddannelse skal du ikke bruge subqueries, for de er lidt for tunge. Brug dette:

SELECT Medarbejder.MedarbejderNavn FROM Medarbejder
INNER JOIN Uddannelse
ON Medarbejder.MedarbejderInitialer = Uddannelse.MedarbejderInitialer
WHERE Uddannelse.UddannelseID = 3;

Du knytter dem sammen via initialer. Du bør knytte dem sammen via Medarbejder-tabellens primærnøgle, er det initialer?
Avatar billede balk Nybegynder
10. november 2005 - 11:12 #7
Igen mange tak. =o)
Avatar billede balk Nybegynder
10. november 2005 - 11:14 #8
Ja tabellerne er relateret via primærnøgler, i medarbejdertabellen er det initialer der er primærnøgle.
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