Besser wäre es zuerst die Union zu bilden und dann dieses Ergebnis mit den Stammdaten zu verknüpfen.
Also ganz grob so
SQL-Code:
SELECT DevTbl.*, Stammdaten.* FROM
(SELECT ... FROM Buchungen WHERE ...
GROUP BY ...
UNION ALL
SELECT ... FROM Buchungen WHERE ...
GROUP BY ...) DevTbl
INNER JOIN Stammdaten ON Stammdaten.xxx=DevTbl.xxx
Der Name "DevTbl" ist ein Alias für die innere Abfrage mit UNION ALL.