مورد اول:

with cte as(
select myDate, row_number() over(order by myDate) rnk
from myTable
)
select avg(datediff(day, a.myDate, b.myDate) * 1.0) as avrg
from cte a, cte b
where a.rnk = b.rnk-1;


مورد دوم:
select avg(duration*1.0) from myTable;