Moin,
Danke fürs Testen.
Da war noch ein Tippfehler beim Refaktorisieren.
Hier die korrekte Version (war ja zu deutlich):
SQL-Code:
select *, ctPrice*DateDiff(Month, dmin,dmax)/ctDurationMonths as PriceInPeriod
from
(
select *,
(select max (X) from (values (@StartPeriod), (ctStart)) as T(X)) dMin,
(select min (X) from (values (@EndPeriod), (DateAdd(Month, ctDurationMonths, ctStart))) as T(X)) dMax
-----------****----- hier stand 'max'
from contracts
) x
where DateDiff(Month, dmin,dmax)>0