Tabellen samenvoegen

Status
Niet open voor verdere reacties.

tlbuis

Nieuwe gebruiker
Lid geworden
25 feb 2010
Berichten
4
Beste allen,

Hieronder zal ik beginnen met de voorbeeld tabellen


Idnr aantal1
1 7
2 8
3 6
4 7
5 6

Idnr aantal2
1 8
2 7
4 8
5 7
6 6

Idnr aantal3
2 7
4 6
6 8

Als resultaat zou ik graag:
Idnr aantal1 aantal2 aantal3
1 7 8
2 8 7 7
3 6
4 7 8 6
5 6 7



Ik heb de volgende query al geprobeerd:
SELECT tabel1.Idnr, tabel1.aantal1, tabel2.aantal2, tabel3.aanta3
FROM tabel1, tabel2, tabel3
WHERE tabel1.Idnr=tabel2.Idnr and tabel2.Idnr=tabel3.Idnr;

maar het resultaat ziet er zo uit:
Idnr aantal1 aantal2 aantal3
2 8 7 7
4 7 8 6

Kan iemand mij helpen met zo´n ´totaaltabel´.
Bij voorbaat dank,

T. Buis
 
Thx, dat moet het zijn, maar is niet mogelijk om het op een simpelere manier op te lossen, met bv alleen: Select, from, where not in...?
 
SELECT tabel1.idnr, tabel1.aantal1,
(SELECT tabel2.aantal2
FROM tabel2
WHERE tabel1.idnr = tabel2.idnr) aantal2,
(SELECT tabel3.aantal3
FROM tabel3
WHERE tabel1.idnr = tabel3.idnr) aantal3
FROM tabel1
WHERE 1 = 1;

Kan ook met een FULL JOIN.

SELECT tabel1.idnr ID_NR, tabel1.aantal1, tabel2.aantal2, tabel3.aantal3
FROM tabel1 FULL join tabel2 on tabel1.idnr = tabel2.idnr
FULL JOIN tabel3 on tabel1.idnr = tabel3.idnr
WHERE 1 = 1
AND tabel1.idnr IS NOT NULL
ORDER BY 1;
 
Laatst bewerkt:
Bedankt voor je antwoord BikerBill64, ik zal het s gaan uitproberen

Edit:
Kheb de eerste query van BikerBill64 in access uitgeprobeerd, maar access geeft een foutmelding:
Syntaxisfout (operator ontbreekt) in query-expressie (SELECT tabel2.aantal2).

Daarom heb ik geprobeerd de query aan te passen naar:
SELECT tabel1.idnr, tabel1.aantal1, aantal2, aantal3
FROM tabel1, tabel2, tabel3
WHERE aantal2 IN (SELECT tabel2.aantal2
FROM tabel2
WHERE tabel1.idnr = tabel2.idnr) and aantal3 IN (SELECT tabel3.aantal3
FROM tabel3
WHERE tabel1.idnr = tabel3.idnr)

Helaas krijg ik hier niet het gewenste effect mee. Ik krijg als uitvoer:
idnr aantal1 aantal2 aantal3
4 7 8 6
2 8 7 7
4 7 8 6
2 8 7 7

Kan iemand me misschien vertellen wat ik fout doe en hoe het anders moet?

Edit2:
Ik heb nu de 2e query ook in access gezet en uitgevoerd. Ook hier krijg ik een syntaxerror.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan