Avatar billede Søren Bech Morsing Praktikant
23. oktober 2006 - 11:57 Der er 14 kommentarer og
2 løsninger

modsat inner join

Hvordan får jeg retureneret de records fra et join hvor der ikke er match?

altså lige modsat inner join
Avatar billede dr_chaos Nybegynder
23. oktober 2006 - 11:58 #1
OUTER JOIN Tror jeg
Avatar billede dr_chaos Nybegynder
23. oktober 2006 - 12:00 #2
jeg troede forkert.
Avatar billede terry Ekspert
23. oktober 2006 - 12:05 #3
LEFT (Outer) or RIGHT (outer)
Avatar billede terry Ekspert
23. oktober 2006 - 12:06 #4
Avatar billede arne_v Ekspert
23. oktober 2006 - 13:09 #5
WHERE NOT IN

måske
Avatar billede Søren Bech Morsing Praktikant
23. oktober 2006 - 13:17 #6
eksempel:

tabel1: id, name
tabel2, id, name2

tabel1
1 Bo
2 Ib
3 Per
4 Kaj

tabel2
1 Ib
2 Per
3 Kaj
4 Thor

Så ønsker jeg at få fra tabel1: Bo
- eller hvis omvendt: Thor
Avatar billede sw_red_6 Nybegynder
23. oktober 2006 - 13:20 #7
hvad med noget i retning af det her?
SELECT * FROM tabel1 WHERE 'tabel1.name' != 'tabel2.name'
Avatar billede arne_v Ekspert
23. oktober 2006 - 15:05 #8
SELECT name FROM tabel1 WHERE name NOT IN (SELECT name FROM tabel2)
Avatar billede arne_v Ekspert
23. oktober 2006 - 15:05 #9
13:20:33 giver ingen raekker med '' og rigtigt mange raekker uden ''
Avatar billede lorentsnv Nybegynder
23. oktober 2006 - 22:15 #10
Prøv eventuelt at kigge på
NOT EXISTS
Avatar billede lorentsnv Nybegynder
23. oktober 2006 - 22:19 #11
NOT EXISTS er ihvertmal mere effektiv en at bruge IN.

Select *
From tabel1 t1
where not exists(Select * from tabel2 where name2 = t1.name1)
Avatar billede arne_v Ekspert
24. oktober 2006 - 02:13 #12
det er vist rigtigt

det virker ulogisk - logikken siger at NOT IN burde bruger mere memory men mindre CPU

men execution plan siger at NOT EXIST er hurtigere
Avatar billede arne_v Ekspert
09. december 2006 - 23:49 #13
sbk ??
Avatar billede Søren Bech Morsing Praktikant
10. december 2006 - 10:16 #14
lorentsnv / arne_v: læg svar
outer joins fik jeg aldrig held med
Avatar billede arne_v Ekspert
10. december 2006 - 17:34 #15
ok
Avatar billede lorentsnv Nybegynder
30. august 2007 - 09:42 #16
Jeg fik visst aldrig lagt svar.
Måske på tide at lukke spørgsmålet ;-)
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