webForumDet fria alternativet

Joins?

1 svar · 224 visningar · startad av oJones

oJonesMedlem sedan dec. 200152 inlägg
#1

Hej!

Har ett litet problem som gör mig superförvirrad.

Mina tabeller ser ut som följer (ungefär ja ;p):

tabell1
---------
kundId
summa1

tabell2
--------
kundId
summa2

Nu vill jag räkna samman summorna där kundId = 1, men av någon anledning så räknar den dubbelt av tabell2 varenda gång jag försöker, så jag tänkte be om lite hjälp.

LarsGMedlem sedan dec. 200012 465 inlägg
#2

Det går inte att lösa med join generellt. (Det fungerar bara om kunden förekommer 1 gång i vardera tabellen.)

Man får nog göra det i flera steg.

create temporary table t(id int, summa int)

insert into t select kundid,summa1 from tabell1 where kundid = 1 union all select kundid,summa2 from tabell2 where kundid = 1

select sum(summa) from t

Varför har du två tabeller?

128 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
126 ms — hämta tråd, inlägg och bilagor (db)