SQL - UNION ALL og SUM
Ok – så jeg har 3 tabeller med forskellige data – jeg har brug for at lave et UNION ALL på alle 3 tabeller, udtrække bestemte data og addere alle værdierne I et af felterne,Jeg laver så den her UNION ALL på de 3 tabeller og fratrækker de data jeg ikke gider have:
SELECT Felt1 FROM Tabel1 WHERE FeltID=" & Session("id") & " AND Felt2='Variabel'
UNION ALL
SELECT Felt1 FROM Tabel2 WHERE FeltID=" & Session("id") & " AND Felt2='Variabel'
UNION ALL
SELECT Felt1 FROM Tabel3 WHERE FeltID=" & Session("id") & " AND Felt2='Variabel'
Så langt så godt – det bedste ville være om jeg kunne lave en SUM på Felt1 – men det kan vidst ikke lade sig gøre så jeg bliver nødt til at lave en afskyelig loop og addere værdierne ”manuelt”:
While not rs.eof
Variabel=CLng(Variabel)+CLng(rs.fields("Felt"))
rs.movenext
wend
Nu kommer problemet. Den variabel jeg ligger værdierne ind i indeholder kun sidste post i den UNION’ede tabel! Hvis jeg udskriver loopet kan jeg se at der loopes igennem 7-8 felter med lige så mange integer værdier – men når jeg udskriver den variabel jeg i loopet adderer det hele i, indeholder den kun integer værdien fra sidste felt i tabellen.
Det er IMHO komplet meningsløst... B-|
Hvis nogen kan se hvad problemet er ville det være hjælpsomt - hvis nogen ved om man kan lave en SUM i det aktuelle eksempel, ville det være fantastisk.
