Mise à jour d'un tableau basé sur SOMME(valeurs) dans un autre tableau sur plusieurs critères

Je n'arrive pas à trouver comment faire cela et vous ne savez pas exactement comment le rechercher!

J'ai une table [MASTER]:

ID varchar(6)
CCY varchar(3)
Val1 decimal(20,5)
Val2 decimal(20,5)
FOO decimal(20,5)

et une autre table [FOOS]

ID varchar(6)
CCY varchar(3)
Val decimal(20,5)

MASTER contient une ligne par l'ID de la DEVISE clé composite (je ne sais pas si c'est correct terme), par exemple

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 contient plusieurs lignes et NE contient PAS une ligne pour chaque MASTER par exemple

ABCDEF GBP 50.00
ABCDEF GBP 51.00
ABCDEF GBP 150.00
ZYXWVU GBP 100.00
ZYXWVU EUR 200.00
ZYXWVU EUR 400.00

J'aimerais exécuter une requête pour mettre à jour uniquement correspondant MASTER lignes avec SUM(FOOS.Val). par exemple,

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

...mais même si j'ai essayé un nombre d'options (where exists, inner join) je ne peux pas semblent être en mesure de relier à un seul MASTER ou ne le SUM(...)

  • Maître de la table contient une ligne par ID/CTL. Et vous souhaitez mettre à jour le Maître de la SOMME pour faire correspondre l'ID de la DEVISE. Est-ce exact? Pourquoi ne pas vous faire un group by sur l'ID de la DEVISE sur le Foo, puis mise à jour de Maître à l'aide de cette première requête comme une requête imbriquée?
  • Il y va de la réponse Mahmood a condition que vous 🙂
InformationsquelleAutor BlueChippy | 2012-12-11