JCB: MS SQL 2005: SUM-Funktion und "geJOINte" Tabellen

Beitrag lesen

Schönen guten Morgen!

Ich fall gleich mal mit der Tür ins Haus. Also ich hab drei Tabellen, welche ich über folgende Abfrage verknüpfe:

SELECT
          TAB_1.ObjektID    AS ObjektID,
          SUM(TAB_2.Anzahl) AS AnzahlGesamt

FROM      TAB_1
LEFT JOIN TAB_2 ON TAB_2.ParentID = TAB_1.ObjektID
LEFT JOIN TAB_3 ON TAB_3.ParentID = TAB_2.ObjektID
GROUP BY TAB_1.ObjektID

Er soll hierbei entsprechenden Childdatensätze zu den In TAB_1 befindlichen Objekten JOINEN und TAB_2.Anzahl summieren und nach dem jeweiligen TAB_1-Objekt gruppieren. Soweit so gut. Das funktioniert aber nur solange, wie ich TAB_3 nicht joine. Denn binde ich diese Tabelle (wie oben) ein, nimmt er TAB_2.Anzahl mal der Anzahl der Childdatensätze in TAB_3 und summiert dann das Produkt. Als Abfrage formuliert, wäre dies quasi "SUM(TAB_2.Anzahl * COUNT(TAB_3.ObjektID))" (ob das jetzt so funzt sei jetzt mal dahingestellt).

Frage: wie kann ich TAB_3 joinen, ohne dass er falsch summiert. TAB_3 brauche ich nämlich noch für andere Berechungen (hab ich hier jetzt mal wegelassen).

Gruß
Jan