Avatar billede sunejens Nybegynder
23. maj 2005 - 22:56 Der er 5 kommentarer

Sammenligning af tabel værdier

Jeg har 2 tabeller. Ved sammenligning af værdierne i tabel 1 med
værdierne i tabel 2 vil jeg gerne kun have et output for hver række i tabel 1 der måtte have 1 eller flere tilsvarende rækker i tabel 2.
Altså, hvis jeg har 600 rækker i tabel 1 og 800 rækker i tabel 2, vil jeg kun have et output på 600 rækker.
Avatar billede arne_v Ekspert
23. maj 2005 - 22:59 #1
SELECT * FROM tabel1 WHERE id IN (SELECT id FROM tabel2)

måske
Avatar billede busschou Praktikant
23. maj 2005 - 22:59 #2
noget ala
Select Distinct tabel1.id From tabel1, tabel2 Where tabel1.id=tabel2.id
Avatar billede jakobgt Nybegynder
23. maj 2005 - 23:10 #3
Eller måske Select * from tabel1 left join tabel2 (on tabel1.id = tabel2.id_i_tabel1) group by tabel1.id. - Denne query giver dig en række for hver række i tabel1, og hvis der ikke er nogen tilsvarende række i tabel2, bliver tabel2's felter null.
Avatar billede busschou Praktikant
24. maj 2005 - 07:38 #4
Faktisk er dit spørgsmål lidt underligt. For du siger du gerne vil have dem som har een eller flere tilsvarende rækker.
Hvad er en tilsvarende række?. Rækkerne kan jo ikke være helt ens. Eller jo, det kan de godt..men så kan der kun være netop een række i tabel2 som matcher en række i tabel1 eftersom to rækker i en tabel _ikke_ kan være identiske.
Avatar billede sunejens Nybegynder
24. maj 2005 - 09:41 #5
Tabel 2 har en kolonne der gør hver enkelt række unik. Hvis jeg holder denne kolonne ude
fra sammenligningen (og det gør jeg), og bruger jeg de resterende kolonner som sammenligningsgrundlag med tabel 1, vil der eventuelt optræde flere rækkematch i tabel 2 når der sammenlignes med tabel 1. Dvs jeg vil kun have eet match i tabel 2 når jeg sammenligner (ligemeget hvilken række) og så være ligeglad med resten af de matchende rækker i tabel 2.
Jeg prøver lige jakobgts svar.
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