Nie mogę się dowiedzieć, jak to zrobić i nie wiem, jak dokładnie to wyszukać!Zaktualizuj jedną tabelę w oparciu o SUM (wartości) w innej tabeli o wielu kryteriach.
mam tabeli [MASTER]
:
ID varchar(6)
CCY varchar(3)
Val1 decimal(20,5)
Val2 decimal(20,5)
FOO decimal(20,5)
inna tabela [FOOS]
ID varchar(6)
CCY varchar(3)
Val decimal(20,5)
MASTER
zawiera jeden wiersz na id/CCY złożony klucz (nie wiem, czy to jest to prawidłowe określenie), np
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
zawiera kilka wierszy i nie zawiera wiersz dla każdej MASTER
np
ABCDEF GBP 50.00
ABCDEF GBP 51.00
ABCDEF GBP 150.00
ZYXWVU GBP 100.00
ZYXWVU EUR 200.00
ZYXWVU EUR 400.00
Chciałabym uruchomić kwerendę, aby zaktualizować tylko dopasowanie MASTER
wiersze z SUM(FOOS.Val)
. na przykład
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
... ale chociaż próbowałem numer opcji (where exists
, inner join
) mogę nie wydaje się być w stanie albo link w pojedynczym MASTER
lub wykonaj SUM(...)
Tabela główna zawiera jeden wiersz na ID/CCY. I chcesz zaktualizować Master za pomocą SUM dla dopasowania ID/CCY. Czy to jest poprawne? Dlaczego nie zrobić grupy na ID/CCY na Foo, a następnie zaktualizować Master przy użyciu tego pierwszego zapytania jako zagnieżdżonego zapytania? – bonCodigo
Oto odpowiedź, którą dostarczył Mahmood :) – bonCodigo