sql 如何插入自身表最大值?

cxp99520 2010-12-08 11:09:17
A 表 字段 如下

ID modify num

ID 是主键 且自增

需要给 A表插入 最大 num+1 后值 我是这样的写的 但报错


INSERT INTO A VALUES(NULL,1,(select max(num) from A));

如上要求如要通过怎么的 SQL 语句实现?
...全文
109 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxq19851204 2010-12-08
  • 打赏
  • 举报
回复
想UPDATE哪里?
cxp99520 2010-12-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wwwwb 的回复:]

INSERT INTO A
select NULL,1,max(num) from A;
[/Quote]

如果换成 update 需要怎样写呢
wwwwb 2010-12-08
  • 打赏
  • 举报
回复
INSERT INTO A
select NULL,1,max(num)+1 from A;
ldb2741 2010-12-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lxq19851204 的回复:]
SQL code
insert into A
select null,1,max(num)+1
from a
[/Quote]

正解
lxq19851204 2010-12-08
  • 打赏
  • 举报
回复
insert into A
select null,1,max(num)+1
from a
wwwwb 2010-12-08
  • 打赏
  • 举报
回复
INSERT INTO A
select NULL,1,max(num) from A;
iihero 2010-12-08
  • 打赏
  • 举报
回复
insert: insert into a select null, 1, max(num)+1 from a;
update: update a, (select max(num) as k from A) b set a.num = b.k+1 where a.num=b.k;
ACMAIN_CHM 2010-12-08
  • 打赏
  • 举报
回复
[Quote]如果换成 update 需要怎样写呢[/Quote]
update a , (select max(num)+1 as k from A) b
set a.num=b.k
ACMAIN_CHM 2010-12-08
  • 打赏
  • 举报
回复
insert inot A VALUES select NULL,1,max(num)+1 from A

57,065

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧