Definitionen af en "gennemsnitsdato" er subjektiv, men du kan konvertere dine datoer til et juliansk tal, derefter gennemsnittet dem, runde det af og derefter konvertere tilbage til en dato.
create table dates (dt DATE);
insert into dates
values ('24-APR-2012');
insert into dates
values ('01-JAN-2012');
insert into dates
values ('01-JAN-2013');
insert into dates
values ('25-DEC-1900');
select to_date(round(avg(to_number(to_char(dt, 'J')))),'J')
from dates;
Her er SQL Fiddle:http://sqlfiddle.com/#!4/98ce9/1