连接代码以获得总和

时间:2018-06-22 19:25:08

标签: sql sql-server

过去2天,我一直在努力解决此问题,但似乎找不到合适的术语来搜索它。

我有3张桌子。

此代码,其客户代码已更改:

ActualCode=111111111  PreviousCode=44444444

这两个表的值分别为1和2:

PreviousCode=11111111, Value1= 50,00,  Value2= 0,00
ActualCode=44444444 ,  Value1= 0,00, Value2 = 50,00

我需要对第一张表中的上一个代码和实际代码的每个关系的值求和。

IE。

对于

ActualCode=11111111,  PreviousCode=44444444

我需要能够:

Code=11111111 Value1=50,00  Value2=50,00

期待您的回答:D

谢谢, P

1 个答案:

答案 0 :(得分:0)

您可以join表和sum值:

select c.actualcode, 
    sum(ac.value1) + sum(pc.value1) as value1,
    sum(ac.value2) + sum(pc.value2) as value2
from codes c
    join actualcodes ac on c.actualcode = ac.actualcode
    join previouscodes pc on c.previouscode = pc.previouscode
group by c.actualcode;

如果主表中的值可能在值表中没有对应的行,则应改用outer joins