我似乎无法找到如何做到这一点,并不确定如何搜索它!基于多个标准的另一个表中的SUM(值)更新一个表
我有一个表[MASTER]
:
ID varchar(6)
CCY varchar(3)
Val1 decimal(20,5)
Val2 decimal(20,5)
FOO decimal(20,5)
和另一个表[FOOS]
ID varchar(6)
CCY varchar(3)
Val decimal(20,5)
MASTER
含有每ID的一行/ CCY复合键(不知道如果那是正确的术语)例如
ABCDEF GBP 200.00 100.00 null
ABCDEF EUR 400.00 150.00 null
ZYXWVU GBP 300.00 200.00 null
ZYXWVU EUR 400.00 200.00 null
FOOS
包含多行和不包含行每MASTER
例如
ABCDEF GBP 50.00
ABCDEF GBP 51.00
ABCDEF GBP 150.00
ZYXWVU GBP 100.00
ZYXWVU EUR 200.00
ZYXWVU EUR 400.00
我想运行一个查询只更新与SUM(FOOS.Val)
匹配MASTER
行。例如
ABCDEF GBP 200.00 100.00 251.00
ABCDEF EUR 400.00 150.00 null
ZYXWVU GBP 300.00 200.00 100.00
ZYXWVU EUR 400.00 200.00 600.00
...但尽管我已经试过的选项NUMER(where exists
,inner join
)我似乎无法能够要么链接到一个MASTER
还是做SUM(...)
主表每个ID/CCY包含一行。并且您想用SUM更新Master以匹配ID/CCY。那是对的吗?为什么不通过在Foo上的ID/CCY进行分组,然后使用第一个查询作为嵌套查询更新Master? – bonCodigo
马哈茂德为你提供了答案:) – bonCodigo