修改表中某个字段等于另一个字段减去 2 小时的 SQL

需求:将表中到达时间按照客户要求改为比赛时间的提前 N 小时,具体如下:

表结构

sql 复制代码
update 
contestSchedule 
SET 
`mainRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 2 HOUR, '%H:%i'),
`assistantRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 2 HOUR, '%H:%i'),
`onRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 2 HOUR, '%H:%i'),
`offRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 2 HOUR, '%H:%i')
 WHERE
`contestTypeId`=2;
update contestSchedule 
SET 
`mainRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i'),
`assistantRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i'),
`onRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i'),
`offRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i')
WHERE 
`contestTypeId`=3;
sql 复制代码
update 
contestSchedule 
SET 
`mainRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i'),
`assistantRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR, '%H:%i'),
`onRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 2 HOUR, '%H:%i'),
`offRefereeArrivalTime`=DATE_FORMAT(CONCAT('2024-03-04 ',`gameTime`)- INTERVAL 3 HOUR - INTERVAL 10 MINUTE, '%H:%i') 
WHERE 
`contestTypeId`=1;
相关推荐
全栈师6 分钟前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 31714 分钟前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop
小O_好好学15 分钟前
CentOS 7文件系统
linux·运维·centos
BergerLee43 分钟前
对不经常变动的数据集合添加Redis缓存
数据库·redis·缓存
x晕x1 小时前
Linux dlsym符号查找疑惑分析
linux·运维·服务器
gorgor在码农1 小时前
Mysql 索引底层数据结构和算法
数据结构·数据库·mysql
-seventy-1 小时前
SQL语句 (MySQL)
sql·mysql
活跃的煤矿打工人1 小时前
【星海saul随笔】Ubuntu基础知识
linux·运维·ubuntu
bug菌¹2 小时前
滚雪球学Oracle[6.2讲]:Data Guard与灾难恢复
数据库·oracle·data·灾难恢复·guard
一般路过糸.2 小时前
MySQL数据库——索引
数据库·mysql