![](/img/trans.png)
[英]Calculate total number of entries per state for a range of dates in php and mysql
[英]Getting the total number using the range of two dates in php mysql
我举一个例子:
date - entries
03/05/2017 - 10
03/06/2017 - 5
03/07/2017 - 5
03/08/2017 - 10
我希望结果是30
我想使用php和mysql在第一个和最后一个日期的范围内添加所有这些条目,但是我不知道如何。 有人可以帮帮我吗?
如果您显示给我们的样本确实代表了表中的所有记录,那么以下方法应该起作用:
SELECT SUM(entries) AS the_sum
FROM yourTable
如果有更多数据,但只想在特定日期范围内求和,则可以使用WHERE
子句限制总和:
SELECT SUM(entries) AS the_sum
FROM yourTable
WHERE STR_TO_DATE(date, '%m/%d/%Y') BETWEEN '2017-03-05' AND '2017-03-08'
请注意,在第二个查询中,我不得不求助于STR_TO_DATE()
因为看来您将日期存储为文本,格式为03/05/2017
。 因此,我们需要首先将其转换为日期类型,以便将其与其他日期进行比较。
通常,您应避免将日期信息存储为文本,因为这样会使您难以在数据库中使用此类数据。 而是使用日期类型存储此信息( date
, datetime
, timestamp
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.