Silakan coba ini :
SELECT CAST(AVG(start_date + (IFNULL(end_date,start_date)-start_date)/2) AS DATETIME) AS average_date FROM TableName
Jika tanggal disimpan sebagai stempel waktu, maka kueri di atas akan memberikan waktu rata-rata antara awal dan akhir untuk semua catatan.