繁体   English   中英

使用PHP 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 因此,我们需要首先将其转换为日期类型,以便将其与其他日期进行比较。

通常,您应避免将日期信息存储为文本,因为这样会使您难以在数据库中使用此类数据。 而是使用日期类型存储此信息( datedatetimetimestamp )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM