wenn ich den
having max(dadate) >= (current_date - (select mon from xx) Months)),
durch eine
where dadate >= (current_date - (select mon from xx) Months)

ersetze
verdoppelt sich die Laufzeit, das bringt also nix