Ich würde die Reihenfolge der Tabellen in der Abfrage ändern:
SQL-Code:
select cast(GFP.Monat as float) as Monat,
sum(SK.AnzahlGF) as AnzahlGF,
sum(SK.KostenHoechsterist) as KostenGf,
sum(SK.KostenHoechsterist) / sum(SK.AnzahlGF) as KostenJeGf
from Tabelle1
left join Finanzen GFP on (GFP.Auftragsnummer = Tabelle1.Auftragsnummer)
left join Teilkosten GFK on (GFK.TeilkostenZaehler = GFP.IDTeilkosten)
left join Hauptkosten SK on (SK.Auftragsart = GFK.Auftragsart) and
(SK.Auftragsnummer = Tabelle1.Auftragsnummer)
where (Tabelle1.AuftrageingangJahr = '2009') and
(GFP.Jahr = '2009') and
(SK.Auftragsart = 'Neukunde')
group by Monat
order by 1