使用MySQL、PHP和cron根据带时间戳的数据对每日值求和


Using MySQL, PHP and cron to sum daily values based on timestamped data

我试图拼凑出一堆步骤,但它越来越令人困惑。

我有一个MySQL表,其中包含(MySQL)时间戳和运行时字段。我想制作另一个包含日期和总和(运行时)字段的表。

我想在每天午夜后执行一个cron作业,将前一天的运行时间相加,并将其插入前一天。

我希望cron作业确保前几天运行,如果没有,它也会运行这些天。

我是cron的新手,所以我不知道最后一步是否有必要。

以下是我的问题点:

  1. 编写一个将时间戳转换为日期并对每个日期求和的查询
  2. 设置一个PHP cron作业,确保所有日期都已输入,但不能重复输入

以下是我在第1部分中尝试的代码(我在CURDATE上运行,直到它工作为止):

$result=mysql_query("SELECT SUM(runtime) AS value_today FROM `table` WHERE date = CURDATE()",$link)
$row = mysql_fetch_array($result);
echo $row[value_today];

与其从查询中转换时间戳,为什么不通过使用php设置变量

$yesterday_date = date('Y-m-d', strtotime('-1 days')) 

获取昨天的日期

然后查询

SELECT SUM(runtime) AS total FROM db_table WHERE DATE(date_run) = '" . $yesterday_date . "' GROUP BY DATE(date_run)"