表A:
ID 姓名 总分
1 张三 190
2 李四 160
表B
sid 分数
1 100
1 90
2 85
2 75
要求一条SQL语句,表B分数合计数更新表A对应的总分
增加个条件,不想一次更新所有人的总分,只想按给定的条件更新某个人的(比如 A.ID=1)
------------------------------
这个问题自己用DSUM函数解决了。谁有其他答案仍然可以探讨。
不好意思,俺这个是ACCESS里的SQL语句,和SQL SERVER里的不一样。
追答,,那换个写法看能用不,,,
UPDATE a SET 总分=(SELECT 合计
FROM
(select sid ,SUM(分数) AS 合计
FROM b
where a.id=b.sid
GROUP BY sid) b
)
WHERE a.id=1
你好,按你的答案操作,提示:“操作必须使用一个可更新的查询”,这是为什么?