Python计算给定日期范围内的记录数

时间:2012-07-27 09:24:57

标签: python mysql

我们有一个后端表,用于存储交易的详细信息,包括自纪元以来的秒数。我正在创建一个用户界面,我从中收集日期以显示日期之间发生的交易计数。

假设日期范围是2012年1月7日 - 2012年7月30日,我无法建立一个逻辑,该计数将为该时间段内发生的记录增加计数器。我应该只打一次DB,因为每天的打击都会导致性能不佳。

我陷入了逻辑:

Convert 07/01/2012 & 07/30/2012 to seconds since epoch.
Get the records for start date - end date [as converted to seconds since epoch] 
   For each record get the month / date 
     -- now how will we add counters for each date in between 07/01/2012 - 07/30/2012 

1 个答案:

答案 0 :(得分:1)

MySQL具有函数FROM_UNIXTIME,它会将你从纪元以来的秒数转换为日期时间,然后你可以提取它的DATE部分(YYYY-MM-DD格式)并根据它进行分组。 / p>

SELECT DATE(FROM_UNIXTIME(timestamp_column)), COUNT(*)
FROM table_name
GROUP BY DATE(FROM_UNIXTIME(timestamp_column))

这将返回类似

的内容
2012-07-01  2
2012-07-03  4
…

(没有交易日的条目)