SQL-Code:
select T1.GRUPPE1, sum(T2.TEILWERT) as SUM_TEILWERT, T1.GRUPPE1 - sum(T2.TEILWERT) from TABELLE1 T1
inner join TABELLE2 T2 on (T2.TABELLE1_ID = T1.ID)
where T2.GRUPPE = 1
group by T1.Gruppe1
für jede Gruppe zu ändern.
Eigentlich ist da ein Fehler in Deinem
DB-Design, wie ich meine. Wenn Ich nachher Zeit habe schaue ich mal drauf.
Ansonsten kannst Du das Ergebnis nur mit einer SP erreichen:
SQL-Code:
CREATE PROCEDURE NEW_PROCEDURE
RETURNS (
GRUPPE VARCHAR(10),
TEILWERT BIGINT,
RESTWERT BIGINT)
AS
BEGIN
GRUPPE = 'Gruppe 1';
select sum(T2.TEILWERT) as SUM_TEILWERT, T1.GRUPPE1 - sum(T2.TEILWERT) from TABELLE1 T1
inner join TABELLE2 T2 on (T2.TABELLE1_ID = T1.ID)
where T2.GRUPPE = 1
group by T1.Gruppe1
INTO :TEILWERT, :RESTWERT;
SUSPEND;
GRUPPE = 'Gruppe 2';
select sum(T2.TEILWERT) as SUM_TEILWERT, T1.GRUPPE2 - sum(T2.TEILWERT) from TABELLE1 T1
inner join TABELLE2 T2 on (T2.TABELLE1_ID = T1.ID)
where T2.GRUPPE = 2
group by T1.Gruppe2
INTO :TEILWERT, :RESTWERT;
SUSPEND;
GRUPPE = 'Gruppe 3';
select sum(T2.TEILWERT) as SUM_TEILWERT, T1.GRUPPE3 - sum(T2.TEILWERT) from TABELLE1 T1
inner join TABELLE2 T2 on (T2.TABELLE1_ID = T1.ID)
where T2.GRUPPE = 3
group by T1.Gruppe3
INTO :TEILWERT, :RESTWERT;
SUSPEND;
END
"Wer seinem Computer Mist erzählt, muss immer damit rechnen..." (unbekannt)
"Der Computer rechnet damit, dass der Mensch denkt..." (auch unbekannt)
mein blog