过去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
答案 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
。