Vui lòng thử cái này:
SELECT CAST(AVG(start_date + (IFNULL(end_date,start_date)-start_date)/2) AS DATETIME) AS average_date FROM TableName
Nếu ngày tháng được lưu trữ dưới dạng dấu thời gian thì truy vấn trên sẽ cung cấp thời gian trung bình từ đầu đến cuối trên tất cả các bản ghi.