获取两个日期之间的记录的问题(时间戳)

时间:2015-03-02 06:29:36

标签: mysql sql date

我正在尝试计算每月的记录数。

问题:

1.如果我尝试计算从(mm / dd / yyyy)01/01/201503/02/2015的记录数,它只显示来自Feb(2)和march(3)的记录有些截断Jan(1)。

2.如果我尝试从2014年12月1日到2015年2月2日搜索,则查询不显示任何输出。我的表和查询。

我已检查过db,它有12月和1月份的记录。

Table : works

work_id | desc | create_date (timestamp)  


SELECT count(`work_id`) as tot
    , MONTH(`create_date`)  as mon
FROM `works`
WHERE  bus_id_fk ="'. $_SESSION['bus_id_fk'].'"
    and  DATE_FORMAT(`create_date`,"%m/%d/%Y") BETWEEN "'.  $sd .'" AND "'.  $ed .'"
GROUP BY YEAR(create_date), MONTH(create_date)

NB: $sd = start date, $ed = end date

1 个答案:

答案 0 :(得分:0)

你能这样试试吗?

SELECT count(`work_id`) as tot
    , MONTH(`create_date`)  as mon
FROM `works`
WHERE  bus_id_fk ="'. $_SESSION['bus_id_fk'].'"
GROUP BY YEAR(create_date), MONTH(create_date)

你仍然会有差距,即没有记录的月份,但在这些情况下,计数为0。