如何计算两天MySQL之间的日期数

时间:2014-03-17 10:11:36

标签: mysql

在我的mysql表上,我将日期保留为datetime。 (例如:2013-11-09 11:15:58),我想编写mysql Query来获取给定日期的日期数。有人可以帮我写这个..

例如: 截止日期:2014-01-19 10:15:15

在表'date_added'上:2013-11-09 11:15:58

是否可以使用mysql查询获取日期数,例如COUNT(),SUM()

2 个答案:

答案 0 :(得分:0)

要查找给定时间戳的特定日期的记录数,请使用字段上的date_formatdate函数按date进行过滤。

select 
    date( date_added ) dt, 
    count( date_added ) dt_cnt 
from my_table
group by 
    date_format( date_added, '%Y-%m-%d' );

或者,您也可以使用date函数从日期时间列中提取日期部分。

select 
    date( date_added ) dt, 
    count( date_added ) dt_cnt 
from my_table
group by 
    date( date_added );

如果您想根据输入日期时间值的日期部分进行计数,请使用

select 
    date( '2014-01-19 10:15:15' ) dt, 
    count( date_added ) dt_cnt 
from my_table
where 
    date( date_added ) = date( '2014-01-19 10:15:15' );

请参阅

答案 1 :(得分:0)

我认为您使用TIMESTAMP来使用此method

SELECT TIMESTAMPDIFF(DAY,'2003-02-01','2003-05-01') from tablename;

如果您想按照以下代码计算:

SELECT COUNT(*) FROM a1 WHERE '2014-03-01';