我是新手使用SQL并拥有下表:
TableA
id|fk|value
-----------
1 |1 |100
2 |1 |200
3 |2 |300
4 |2 |400
我正在尝试在另一个表格中显示以下内容:
表B
id|sum
------
1 |300
2 |700
i
中的行TableB
对应于fk = i
中所有TableA
的总和。
有人能指出我正确的方向吗? 谢谢!
答案 0 :(得分:6)
我假设TableB只是查询结果,而不是SQL表。然后你需要像
这样的查询select fk, sum(value)
from tableA
group by fk
如果你想创建单独的表,那么你可以只做
create table TableB as SELECT_ABOVE
您无需为新表指定列,因为它们将从select
答案 1 :(得分:0)
create tableB(fk int, sum int)
select fk, sum(value)
into #tableB
from
tableA
group by fk