Bonjour à tous,

j'ai une base avec des titres financiers. A chaque titre financier est associé un secteur et un nombre qu'on appellera indice (et dont je ne détaille pas la signification).

Certains titres n'ont pas d'indice associé. Je souhaite faire une mise à jour de la base qui remplace ces valeurs manquantes par la moyenne de l'indice pour les autres titres appartenant au même secteur.

Pour le moment, j'ai réussi ceci :

SELECT secteur, AVG(indice) FROM [base$] WHERE ISNUMERIC(indice) GROUP BY secteur

qui me renvoie :

Secteur_1                                    68.4
Secteur_2                                   108.3
Secteur_3                                   470.5
Secteur_4                                     36.7
Secteur_5                                     19.4
Secteur_6                                   278.1
Secteur_7                                     29.1
Secteur_8                                 1062.2
Secteur_9                                     28.4
Secteur_10                         2956.4
J'ai par ailleurs réussi à faire ceci :

UPDATE [base$] SET indice = 3.14159 WHERE NOT ISNUMERIC(indice)

qui me remplace toutes mes valeurs manquantes par 3,14159.

Bien entendu, je souhaite désormais combiner les deux requêtes pour, à la place du 3,14159, avoir la moyenne sectorielle que j'ai réussi à calculer dans la première requête.

Comment puis-je combiner mes deux codes pour arriver à mon objectif ?

Je vous remercie