所以我有一个看起来像这样的 MySQL 表:
id timestamp action timePassed
1 2012-07-10 22:44:00 start 0
2 2012-07-10 22:44:50 pause 50
3 2012-07-10 22:45:30 play 50
4 2012-07-10 22:47:25 pause 205
5 2012-07-10 22:48:05 play 205
我不知道它有多明显,但这里发生的基本上是在每个“暂停”行上,我正在计算当前时间戳和“开始”行的时间戳之间的秒数差异。
我能想到的唯一方法是在数据库中插入一个新的“暂停”行,以便生成时间戳……然后在数据库中查询该“暂停”行的时间戳……计算以秒为单位的差异在“暂停”行和使用 PHP 的“开始”行之间......然后使用 timePassed 结果更新“暂停”行。
我的问题是是否有更好的方法来做到这一点(即使用 timediff 或其他一些 MySQL 命令)。问题是“暂停”时间戳在我进行 INSERT 之前不存在,所以我觉得需要先发生这种情况才能进行任何计算?