两表累加时的问题

agilecoder 2007-03-07 06:20:26
table1
pid num
A 1
B 2

table2
pid num
A 5
A 6
B 7

我想将table2中的num加到table1中pid相同的对应的num中
使用如下语句

update table1
set table1.num =table1.num + table2.num
from table1,table2
where table1.pid = table2.pid

但是我发觉对于table2中的相同的pid,累加的时候只能累加一条记录的num,或者是table2中的第一条,或者是第二条,不能2条都累加。

我不知道为什么会产生这种情况,各位有什么方法吗?
...全文
147 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
agilecoder 2007-03-07
  • 打赏
  • 举报
回复
tks
paoluo 2007-03-07
  • 打赏
  • 举报
回复
Update A
Set A.num = A.num + B.num
From
table1 A
Inner Join
(Select pid, SUM(num) As num From table2 Group By pid) B
On A.pid = B.pid

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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