Fragt sich nur noch, warum das Outer-Joins sind?
SQL-Code:
SELECT A.Nummer AS Auftragnr,
SUM(B.BSumme) AS Buchungssumme,
P.Name AS Name
FROM Auftrag A
INNER JOIN Buchungen B
ON A.Nummer = B.AuftragNr
INNER JOIN Personal P
ON B.ID_Personal = P.ID
WHERE B.Datum BETWEEN '01.01.2011' AND '01.08.2012'
GROUP BY A.Nummer, P.Name
ORDER BY A.Nummer, P.Name
Da B in der Where-Klausel und P in der Group-By-Klausel auftritt, können nur Zeilen im Ergebnis vorkommen, die in allen drei Tabellen vorkommen. Und das ist dann automatisch jeweils ein Inner-Join.
Edit: und dann auch noch B.ID IS NOT NULL. Wenn ID in B der PK ist, dann ist das ein Inner-Join.