我有一张这样的桌子

图书馆日志(log)

patronName bookId dueDate
John 24 2024-01-14
Sam 42 2024-01-07
Bob 13 2024-01-07

我正在try 创建一个SQL查询来更新所有的duedate值,并将它们增加一周.

这就是我所拥有的:

UPDATE 图书馆日志(log) SET dueDate = DATE_ADD((SELECT * FROM (SELECT dueDate FROM 图书馆日志(log))tblTmp), INTERVAL 1 WEEK);

但这一切又回来了

#1242 - Subquery returns more than 1 row

推荐答案

更新的RHS应该只是包装在DATE_ADD中的dueDate列:

UPDATE librarylog
SET dueDate = DATE_ADD(dueDate, INTERVAL 1 WEEK);  -- update all records

Mysql相关问答推荐

如何使RST(*)在巨大的数据集上快速执行?

MySQL生成的整型计算可以为空吗?

根据SQL中的平均范围对学生进行排名

当日期附加到MySQL后,如何按日期说明排序?

Laravel DB::Transaction()

查找表中的唯一记录

错误:此查询集包含对外部查询的引用,并且只能在子查询中使用

如何编写按天数汇总值的sql查询?

检索按键列值分组的最新日期 (MySql)

如何创建一个判断行是否存在的mysql查询-如果存在我想插入一条新记录,否则增加一个值

从 SQL 中的左连接和内连接中减go 计数

保存SQL查询的中间结果

没有 JDBC 类型的方言映射:1111

自动登录 phpMyAdmin

何时在 mysql 中使用 TEXT 而不是 VARCHAR

计算执行的查询数

MySQL行格式:固定和动态之间的区别?

MySQL 1062 - 键 'PRIMARY' 的重复条目 '0'

SELECT INTO 和未声明的变量错误

MySQL中的base64编码