Eine Selbstverknüpfung verbindet den aktuellen Datensatz mit allen Datensätzen mit dem gestrigen Datum. Gruppieren nach ermöglicht in diesem Zusammenhang das Zählen vieler Datensätze mit gleichem Datum. t1
muss separat verbucht werden, also wird das Gehalt nachträglich hinzugefügt und count(*) wird erhöht, um den Durchschnitt zu berechnen.
Hier ist Sql Fiddle mit Beispiel .
select t1.ClientID,
t1.ClinetDOBs,
(t1.Slaries + sum (t2.Slaries)) / (count (*) + 1) Avg_Slaries
from table1 t1
inner join table1 t2
on t1.ClinetDOBs = dateadd(day, 1, t2.ClinetDOBs)
group by t1.ClientID,
t1.ClinetDOBs,
t1.Slaries