Avatar billede jens426 Nybegynder
05. oktober 2007 - 20:15 Der er 4 kommentarer og
1 løsning

intersect version 4.1

som jeg har forstået det understøtter 4.1 ikke intersect.

Men hvad gør man så

`test5`
    id1     id2
    1     2
    1     3
    1     4

`test6`

    id1     id2
    1     3
    1     4

resultatet skulle gerne bliver

    id1     id2
    1     2

Følgende virker ikke

    SELECT `id1`, `id2` FROM `test5` WHERE 1
    INTERSECT
    SELECT `id1`, `id2` FROM `test6` WHERE 1

nogle ideer, link, kode.
Avatar billede arne_v Ekspert
05. oktober 2007 - 20:21 #1
SELECT *
FROM test5
WHERE NOT EXISTS (SELECT * FROM test6 WHERE test6.id1=test5.id1 AND test6.id2=test5.id2)
Avatar billede jens426 Nybegynder
05. oktober 2007 - 20:24 #2
imponerende har selv brugt 3 timer på at finde en løsning og du klare det på 2 minuter.

skriv et svar og jeg tildeler point
Avatar billede arne_v Ekspert
05. oktober 2007 - 20:40 #3
svar
Avatar billede pidgeot Nybegynder
05. oktober 2007 - 21:43 #4
Så er dit eksempel i øvrigt en EXCEPT, ikke en INTERSECT. INTERSECT skal give de rækker der optræder begge steder, mens EXCEPT giver dem der kun optræder i det første resultatsæt.

(Og nej, ingen af dem findes endnu i MySQL.)
Avatar billede arne_v Ekspert
05. oktober 2007 - 21:50 #5
He he.

Men forskellen er kun NOT i SQL'en.
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