计算多行的两个日期列之间的平均差值


Calculate the average difference between two date columns for multiple rows

我想计算多个日期之间的平均差值:sent_date &view_date。

表的结构如下:

CREATE TABLE `mails` (
  `m_id` int(8) NOT NULL AUTO_INCREMENT,
  `sent_date` date NOT NULL DEFAULT '0000-00-00',
  `view_date` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`l_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=3 ;

示例数据:

sent_date: 2013-06-01view_date: 2013-06-02差值:2天

sent_date: 2013-06-01view_date: 2013-06-05差异:4天

平均:3天

使用DATEDIFF()和AVG()
select avg(datediff(view_date, sent_date))
from mails