簡體   English   中英

當字段是唯一鍵的一部分時,如何為mysql表中的所有行的datetime字段添加時間?

[英]How to add time to datetime field for all rows in mysql table when field is part of a unique key?

我正在嘗試這樣做:

UPDATE `myTable` SET `time_stamp` = ADDTIME(`time_stamp`, '02:30:00');

但是,“ time_stamp”是我唯一鍵的一部分,並且出現錯誤:“鍵“ time_stamp”的條目重復“ 2014-09-22 18:30:00””

有一個更好的方法嗎? 我必須從最新的時間戳開始逐行走嗎? 還是做一些棘手的事情,例如先大量減少時間再增加時間?

我理解您想要將2h30m0s添加到表中的每一行的問題,這就是原因,為什么您會得到重復的鍵錯誤。 在這種情況下,只需按降序排列,這樣就不會將行更新為已經存在的值。

UPDATE `myTable` 
SET `time_stamp` = ADDTIME(`time_stamp`, '02:30:00')
ORDER BY time_stamp DESC;

但是,如果要減去,則必須對ASC結尾進行排序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM