1

这与我的另一个问题有关

我有这张桌子

CREATE OR REPLACE TABLE hits (ip bigint, page VARCHAR(256), agent VARCHAR(1000), 
                              date datetime)

我想计算每个页面的 googlebot 访问之间的平均时间。

... WHERE agent like '%Googlebot%' group by page order by date

就像是

select datediff('2010-09-18 04:20:47', '2010-09-16 05:23:04')

但是对于表中的每个日期
如果没有mysql方式,我怎么能在php中做到这一点?

4

1 回答 1

3
SELECT page, TIMESTAMPDIFF(SECOND, MIN(date), MAX(date)) / (COUNT(*)-1) FROM hits 
WHERE agent like '%Googlebot%' GROUP BY page;

TIMESTAMPDIFF(SECOND, a, b)返回日期表达式 a 和 b 之间的秒差。对于每个页面,查询查找第一次和最后一次访问的日期以及访问的总次数,并计算算术平均值。

于 2010-09-19T09:30:10.907 回答