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

标签 php mysql

我有一个表,其中包含两个时间戳字段 -

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;

我使用

插入了两行
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');

现在,我需要将第二个日期值复制到第一个日期列,但是当我尝试更新查询时,两个日期值都会更新为今天的日期。

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.

不知何故,second_date 的on update CURRENT_TIMESTAMP() 属性在这里产生了问题。如何复制第二列中的值而不影响 second_date 的现有值?

最佳答案

以下查询应帮助您复制第二列中的值,而不影响 secondary_date 的现有值:

UPDATE test SET first_date = second_date , second_date = second_date WHERE  id=<row_id>

关于php - 将时间戳值从一列复制到另一列失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47348852/

相关文章:

php - API 按城市和酒店搜索,查找我的数据库中存在的城市和酒店

PHP - 无法修改 header 信息 - header 已发送(输出开始于

MySQL如何从引用的表中检索值?

mysql - 使查询内部查询结果可选择

php - 从 html 页面保存多个重复输入的最佳方法是什么

php - 纯 PHP 洪流客户端?

php - 使用 PHP 从 url 添加文件创建 zip

MYSQL 使用 WHERE、AND、OR 选择

centos - 使用 mysqldump 和 rsync 进行备份

mysql - 想知道如何加快 MySQL 调用速度