Avatar billede klovnefisken Nybegynder
21. november 2011 - 10:31 Der er 4 kommentarer og
1 løsning

kikke i 2 tabeller , findes i den anden må ikke komme med ud

HEJ
jeg har 2 tabeller i min database , hvor jeg gerne vil have en udtræk fra på den måde at de ID'er fra tabel1 der er i tabel2 ikke kommer med

eks tabel1 feltnavne:
t1_id,t1_tekst,t1_navn
1 , hej, test
2, godav, xxx
3, hi ,yyy
4, gg ,zzz

tabel2 feltnavne;
t2_id,t2_t1id
1,2
2,1
3,3

sql=select t1_tekst FROM tabel1 WHERE t1_id >ikke findes< i t2_t1id

forstået således at med de tabel indhold der er som eks. skal t1_tekst kun komme ud for t1_id=4, da t1_id=4 ikke er nævnt i tabel2 t2_t1id

jeg håber spørgsmålet er forstået

M.V.H. Bruno
Avatar billede Qobra Nybegynder
21. november 2011 - 10:59 #1
Der er mange måder at gøre det på, her er en:

SELECT * FROM tabel1 t1 WHERE NOT EXISTS (SELECT * FROM tabel2 t2 WHERE t2.t2_t1id = t1.t1_id)

Husk at lave et indeks på t2_t1id, ellers kan forespørgslen godt tage lang tid.
Avatar billede klovnefisken Nybegynder
21. november 2011 - 11:38 #2
ser ganske nem ud , men fik problemer da jeg ville smide en where mere på

SELECT * FROM tabel1 t1 WHERE t1_navn='xxx' AND WHERE NOT EXISTS (SELECT * FROM tabel2 t2 WHERE t2.t2_t1id = t1.t1_id)

kan de 2 typer ikke skrives i samme sql
Avatar billede Qobra Nybegynder
21. november 2011 - 11:57 #3
Du skal ikke skrive WHERE igen efter AND.
Avatar billede klovnefisken Nybegynder
21. november 2011 - 11:58 #4
ups store fjols jeg skrev en WHERE formeget
løsning er fundet takker
skriv et svar til point
Avatar billede Qobra Nybegynder
21. november 2011 - 12:01 #5
Velbekomme.
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