Hallo MrSpock
Ich bin mir nicht sicher, ob ich Dein Problem richtig verstanden habe. Wenn Du zwei Datensätze möchtes, das aber nur, wenn im betreffenden Netto-Feld ein Wert steht, dann denke ich, das ist ein klarer Fall für den Einsatz von Having. Im
SQL-Server sieht das wie folgt aus:
Code:
SELECT SUM(Netto1) AS SumNetto,
ST1 AS ST,
SUM(MwST1) AS SummSteuer,
SUM(Netto1)+SUM(MwSt1) AS Brutto
FROM RechListe
GROUP BY ST1
HAVING SUM(Netto1) > 0
UNION
SELECT SUM(Netto2) AS SumNetto,
ST2 AS ST,
SUM(MwST2) AS SummSteuer,
SUM(Netto2)+SUM(MwSt2) AS Brutto
FROM RechListe
GROUP BY ST2
HAVING SUM(Netto2) > 0
Im Gegensatz zum Where wird bei Having die Gruppierung berücksichtigt. Es gibt aber noch eine andere Schreibweise von HAVING. Anstelle der SUM-Funktion muss die Alias-Variable angegeben werden. SQLAnywhere macht das zum Beispiel. In diesem Falle sieht das dann so aus: HAVING SumNetto > 0
Gruss
Xaver