修改表中某个字段等于另一个字段减去 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;
相关推荐
菜鸟康3 分钟前
Linux系统编程——理解系统内核中的信号捕获
linux·运维·服务器
张明奇-琦玉5 分钟前
Boost之log日志使用
linux·服务器·算法
云计算DevOps-韩老师20 分钟前
【网络云计算】2024第52周-每日【2024/12/26】小测-理论&实操-备份MySQL数据库并发送邮件-解析
linux·开发语言·网络·数据库·mysql·云计算·perl
2401_8504108330 分钟前
redis的持久化
数据库·redis·bootstrap
如雨随行202033 分钟前
Mysql事务
数据库·mysql·oracle
ac.char1 小时前
Ubuntu系统下 npm install -g tauri 报错问题处理
linux·ubuntu·npm
未来并未来2 小时前
深入解析MVCC中Undo Log版本底层存储读取逻辑
java·数据库·mysql
菜还不练就废了2 小时前
Java期末复习JDBC|网课笔记+校课总结
java·开发语言·数据库
无名3872 小时前
Debian12 安装配置 ODBC for GaussDB
linux·运维·gaussdb
BabyFish132 小时前
Oracle复合索引规则指南
数据库·oracle·索引·复合索引