Avatar billede Søren Bech Morsing Praktikant
28. oktober 2005 - 13:46 Der er 4 kommentarer og
1 løsning

modsat af forespørgsel der joiner

Hvis jeg har 2 tabeller:
[medarbejder] med felterne: id, navn
[tilmeld] med felter: id, medarbejder id.

Så laver jeg 10 medarbejdere.
5 af dem laver jeg en linie for i tilmeld

Dem kan jeg så joine sammen og få ud.
Men hvordan får jeg det modsatte ud (de 5 der ikke er med i tilmeld tabellen)?
Avatar billede Søren Bech Morsing Praktikant
28. oktober 2005 - 13:52 #1
Måske sådan her?
SELECT navn FROM medarbejder, tilmeld WHERE tilmeld.medarbejderid = medarbejder.id

SELECT navn FROM medarbejder WHERE NOT EXISTS (SELECT * FROM tilmeld WHERE tilmeld.medarbejderid = medarbejder.id)
Avatar billede martinlind Nybegynder
28. oktober 2005 - 13:55 #2
eller måske sådan :
SELECT navn FROM medarbejder, tilmeld WHERE tilmeld.medarbejderid = null
Avatar billede Søren Bech Morsing Praktikant
28. oktober 2005 - 15:07 #3
LUKKER!
martinlind: læg du et svar...
Avatar billede kilroydk Nybegynder
28. oktober 2005 - 16:00 #4
Du skal bruge en såkaldt Sub-query

  Select Id,Navn From Medarbejder Where ID Not In(Select ID From Tilmeld)

Så kommer alle dem fra medarbejder som ikke findes i Tilmeld.

God Fornøjelse
Avatar billede Søren Bech Morsing Praktikant
29. oktober 2005 - 12:56 #5
kilroydk, næsten mage til det jeg selv skrev
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
Computerworld tilbyder specialiserede kurser i database-management

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