so?
SQL-Code:
select
pu.KASSENABSCHLUSS_NR,
sum(case
when p.GV_TYP = 11 then pu.POS_BRUTTO -- 3. Oder falls es solche gibt die Summe dieser
else Null -- 2. Die enthält entweder Null, wenn es keine Belege mit einer Belegpos für die GV_TYP = 11 gibt
end
) as Summe
from
(
select
KASSENABSCHLUSS_NR,
BON_ID,
POS_BRUTTO
from KASSE_BONPOS_UST
where pu.Z_KASSE_ID = 'MeineKasse' -- 0. Wir wollen nur diese Kasse auswerten, hier dürfte das Ergebnis genau ein Datensatz sein.
) pu
left join KASSE_BONPOS p
on (pu.KASSENABSCHLUSS_NR = p.KASSENABSCHLUSS_NR) and
(pu.BON_ID = p.BON_ID)
group by pu.KASSENABSCHLUSS_NR -- 1. Jeweils eine Zeile pro KASSENABSCHLUSS_NR
order by pu.KASSENABSCHLUSS_NR
Das sollte nicht funktionieren, weil das pu. in der Where Klauses da innerhalb des Subselect nicht bekannt ist.