如何计算每月的项目,并在PHP中附加每个项目的日期?

时间:2018-06-12 03:07:40

标签: php mysql datetime

我想从十年前到今天计算一个月内所有新生的数量,并将这些信息放入一张表中,逐月分开。

我有一个mysql用户表,其中包含用户以时间戳格式注册的日期。

所以,我有这样的事情: (格式为dd-mm-yyyy)

Unix --------------- readable date  
1528743811 --------- 11-6-2018  
1528740914 --------- 11-6-2018  
1528740347 --------- 11-6-2018  
1528733661 --------- 11-6-2018  
1528676301 --------- 10-5-2018  
1528657978 --------- 10-5-2018  
1528508065 --------- 8-5-2018   
1528492266 --------- 8-4-2018
etc..

我怎么做计算? (即使在seudocode中,我也会想到从哪里开始,或者如何实际制定问题)。

我期待这样的事情:

4-2018  --------- 1
5-2018  --------- 3
6-2018  --------- 4
  

如果您认为 syntaxis可以改进,请告诉我,谢谢! (英语不是我的主要语言)。

     

此外,如果您想 downvote ,或投票问题要关闭或   删除,请给我留言,所以我可以改进我的   的问题。感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用FROM_UNIXTIME()GROUP BY

在SQL中完成所有这些操作
SELECT 
    FROM_UNIXTIME([Unix], '%M %Y') AS Label, 
    COUNT(*) AS Count 
FROM [table] 
GROUP BY MONTH(FROM_UNIXTIME([Unix])), YEAR(FROM_UNIXTIME([Unix]))
WHERE ADDDATE(FROM_UNIXTIME([Unix]), INTERVAL 10 YEARS) >= CURDATE()

如果那个FROM_UNIXTIME太多,你可以查询它。