Avatar billede chrden123 Nybegynder
25. september 2006 - 15:03 Der er 8 kommentarer og
1 løsning

Hent id i tabel1, som ikke eksisterer i tabel2

Lige nu henter jeg id fra både tabel1 og tabel2, derefter sammenligner jeg vha. php, om id eksisterer i begge tabeller.

Jeg vil i midlertid gerne have alt formuleret i min mysql_query, og jeg vil have hentet de id's ud fra tabel1, som ikke også er i tabel2. I praksis er det et nyhedsbrev, hvor nogle mennesker ikke også tilmelder sig et emne - de mennesker skal jeg have hentet ud.

Kan I hjælpe?
Avatar billede arne_v Ekspert
25. september 2006 - 15:10 #1
nyere MySQL:

SELECT * FROM tabel1 WHERE id IN (SELECT id FROM tabel2)
SELECT * FROM tabel1 WHERE id NOT IN (SELECT id FROM tabel2)
Avatar billede barklund Nybegynder
25. september 2006 - 15:11 #2
Med en venstrejoin hvor højresiden er null:

SELECT tabel1.* FROM tabel1 LEFT JOIN tabel2 ON tabel1.id = tabel2.id WHERE tabel2.id IS NULL

:)

--
Morten Barklund
Avatar billede barklund Nybegynder
25. september 2006 - 15:12 #3
Eller hvis din MySQL er 4.1 eller nyere - som arne_v foreslår.
Avatar billede chrden123 Nybegynder
25. september 2006 - 15:16 #4
tak, jeg var der næsten!

vil I have points?
Avatar billede chrden123 Nybegynder
25. september 2006 - 15:17 #5
jeg brugte LEFT JOIN, så følger jeg min sædvanlige MySQL, selvom jeg må indrømme den nye ser smart ud!
Avatar billede barklund Nybegynder
25. september 2006 - 15:27 #6
Jeg kaster gerne et svar :)
Avatar billede chrden123 Nybegynder
25. september 2006 - 15:30 #7
hov, jeg ville have givet jer 15 hver, men der kom ikke en valgmulighed. håber det går :-)
Avatar billede arne_v Ekspert
25. september 2006 - 15:37 #8
keine probleme

du brugte jo ogsaa rent faktisk LEFT JOIN
Avatar billede barklund Nybegynder
25. september 2006 - 15:43 #9
Du kan kun uddele point, til dem der har lagt svar :) Så skulle du have bedt arne_v specifikt om et svar :)

Tark for points anyways :)
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