donglu3243 2017-11-17 10:46
浏览 34
已采纳

复制时间戳值从一列到另一列失败

I have a table with two timestamp fields formed with -

CREATE TABLE `test` 
(`id` INT NOT NULL AUTO_INCREMENT , 
`first_date` TIMESTAMP NULL , 
`second_date` TIMESTAMP on update CURRENT_TIMESTAMP() NULL , 
PRIMARY KEY (`id`)) ENGINE = InnoDB;

I inserted two rows using

INSERT INTO `test` (`id`, `first_date`, `second_date`) 
VALUES (NULL, NULL, '2017-10-18 17:02:14'), (NULL, NULL, '2017-10-18 17:02:14');

Now, I need to copy the second date value to the first date column, but when I try the update query both the date value get updated to today's date.

update test set first_date = second_date where id=<row_id>

id | first_date          | second_date
----------------------------------------------
3  | 2017-11-17 16:09:03 | 2017-11-17 16:09:29 --> This value was 
4  | NULL                | 2017-10-18 17:02:14     "2017-10-18 17:02:14" 
5  | NULL                | 2017-10-18 17:02:14      before the update query.

Somehow, the on update CURRENT_TIMESTAMP() attribute of the second_date is creating a problem here. How would I copy the value from second column without affecting the existing value of second_date?

  • 写回答

1条回答 默认 最新

  • dtz8044 2017-11-17 11:23
    关注

    The following query should help you to copy the value from second column without affecting the existing value of second_date:

    UPDATE test SET first_date = second_date , second_date = second_date WHERE  id=<row_id>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog