Avatar billede snavepolle Nybegynder
28. februar 2005 - 10:42 Der er 2 kommentarer og
1 løsning

Set-difference i mySQL

Hvordan laver man set-difference i mySQL?

F.eks. vil jeg finde de instanser af tabel1 hvor "felt" ikke også er i tabel2.

select distinct * from tabel1 as R where R.felt not in (SELECT T.felt from tabel1 as T, tabel2 as S WHERE T.felt like S.felt)
(ovenstående virker ikke)
Avatar billede arne_v Ekspert
28. februar 2005 - 11:30 #1
4.1:

SELECT *
FROM tabel1
WHERE felt NOT IN (SELECT felt FROM tabel2)

ældre:

SELECT *
FROM tabel1 LEFT JOIN tabel2 ON tabel1.felt=tabel2.felt
WHERE tabel2.felt IS NULL
Avatar billede snavepolle Nybegynder
28. februar 2005 - 11:44 #2
takker

"not in" som jeg selv foreslog virker ikke, men det virker med "left join" :-)

hvis du sætter et svar, vil du få point.
Avatar billede arne_v Ekspert
28. februar 2005 - 11:46 #3
svar
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