Avatar billede finger Nybegynder
08. juli 2004 - 10:41 Der er 10 kommentarer og
1 løsning

select på table der ikke har kolonner til fælles

Hej.

Jeg har 2 tables.
Med en inner join har jeg lavet en select der vælger de rækker de 2 tables har til fælles.

Jeg har også brug for en select dor vælger de rækker i table1 der IKKE er i table2.
Jeg troede jeg kunne bruge right outer join til dette, men det returnerer det samme som min inner join.
Hvordan gør man?
Avatar billede finger Nybegynder
08. juli 2004 - 10:43 #1
Jeg mener selvfølgelig at de begge har den samme ID kolonne, men at  jeg vil have de rækker i table1 hvor ID ikke forekommer i table2
Avatar billede arne_v Ekspert
08. juli 2004 - 10:44 #2
SELECT * FROM tabel1 LEFT JOIN tabel2 ON tabel1.id=tabel2.id AND tabel2.id IS NULL
Avatar billede terry Ekspert
08. juli 2004 - 10:47 #3
SELECT * FROM tabel1 T1 WHERE T1.ID NOT IN (SELECT ID FROM tabel2)
Avatar billede arne_v Ekspert
08. juli 2004 - 10:50 #4
Jeg vil faktisk anbefale dig at vælge terrys løsning. Det andet er et MySQL
hack fordi MySQL (før 4.1) ikke understøtter subqueries.
Avatar billede terry Ekspert
08. juli 2004 - 10:54 #5
I'm not sure but I think the sub select is faster too
Avatar billede finger Nybegynder
08. juli 2004 - 10:59 #6
Arne_v --> giver det samme som jeg selv havde prøvet
terry--> Lige hvad jeg skulle bruge. læg et svar for point
Avatar billede arne_v Ekspert
08. juli 2004 - 10:59 #7
Something is faster in one version - in the next versions it may be different.

The important thing is that it is more readable SQL.
Avatar billede terry Ekspert
08. juli 2004 - 11:00 #8
svar :o)
Avatar billede arne_v Ekspert
08. juli 2004 - 11:06 #9
Den SQL jeg foreslog skal virke - AND tabel2.id IS NULL - skal sørge
for at ikke alle rækker kommer med.
Avatar billede finger Nybegynder
08. juli 2004 - 11:08 #10
ok. ja jeg kan også godt se at den bør virke. også efter dokumentationen...
Det er garenteret mig der har misforstået noget, men nu har jeg det andet der virker.
Tak for hjælpen til jer begge.
Avatar billede terry Ekspert
08. juli 2004 - 11:11 #11
selv tak
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