我有一个系统,平板电脑执行任务并报告已完成的任务和时间。其中一款平板电脑已经不同步,时间为2天,3小时,31分钟和31秒,这让我的报道变得混乱。
是否有一种简单的方法可以使用查询将缺少的时间添加到字段中?
我可以确定哪些字段需要更改,因为它们都绑定到单个作业,因此可以将WHERE job_id = 998
添加到最后。
我已经浏览了一下,并不能真正了解所提供的答案,并且不能搞砸并插入不正确的时间。
为了澄清,我基本上有一个事件,平板电脑认为发生在'2015-12-01 07:57:30'
,但实际上发生在'2015-12-03 11:29:01'
。我手动完成了一个,但我有超过100行需要更新。类似于:UPDATE job_logs SET entry_time = <CURRENT FIELD DATE> ADD <OUT OF SYNC TIME> WHERE job_id = 998;
任何答案都值得赞赏,因为我仍然在学习&amp;想了解解决方案的工作原理......
提前致谢!
答案 0 :(得分:1)
您可以使用MySQL DATE_ADD()
功能,请在SELECT
字段
<CURRENT FIELD DATE>
查询
SELECT <CURRENT FIELD DATE>,DATE_ADD(<CURRENT FIELD DATE>, INTERVAL '2 3:31:31' DAY_SECOND)
FROM job_logs
WHERE job_id = 998;
然后您可以在UPDATE查询中使用相同的
UPDATE job_logs
SET entry_time = DATE_ADD(<CURRENT FIELD DATE>, INTERVAL '2 3:31:31' DAY_SECOND)
WHERE job_id = 998;
我希望这有效......
答案 1 :(得分:1)
在mysql
中提交的日期时间中添加日期或时间没有问题UPDATE job_logs SET entry_time = ADDTIME(entry_time , '1:2:3') WHERE job_id = 998
这会将您的entry_time更新为现有entry_time的1小时2分钟和3秒。