Определението за „средна дата“ е субективно, но можете да преобразувате датите си в юлианско число, след това да ги осредните, да ги закръглите и след това да конвертирате обратно в дата.
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;
Ето SQL Fiddle:http://sqlfiddle.com/#!4/98ce9/1