[Access] Opérations sur requête analyse croisée

Opérations sur requête analyse croisée [Access] - SQL/NoSQL - Programmation

Marsh Posté le 14-10-2005 à 09:03:16    

Bonjour,
j'ai créé une base de données permettant de saisir l'activité de commerciaux (saisie de devis).
J'ai dans ma table les champs: code vendeur ([CodeVendeur]) et état du devis ([EtatDevis]) qui peut être conclu, en attente, annulé ou refusé.
J'aimerais faire des statistiques de réussite (nombre de devis réussis/nombre de devis effectués)*100) par code vendeur.
J'ai donc créé une requête analyse croisée me donnant:
-sur chaque ligne chaque code vendeur.
-sur chaque colonne un état de devis différent avec le nombre de devis correspondant à chaque possibilité pour chaque commercial au croisement des lignes et colonnes.
J'aimerais à présent rajouter les colonnes me permettant de faire mes calculs.
Je pense qu'il faut que j'utilise une autre requête, qui me sélectionne les champs voulus et définisse les opérations.J'ai donc créé la requête suivante:
SELECT [AnalyseCroisee].[CodeVendeur],[AnalyseCroisee].[en attente], [AnalyseCroisee].[conclu],],[AnalyseCroisee].[annulé],[refusé] FROM [AnalyseCroisee]
Cette requête me récupère bien les colonnes désirées de la requête analyse croisée.
Pour tester si j'arrive à effectuer des opérations sur mes colonnes, j'ai inséré dans cette dernière requête SUM([AnalyseCroisee].[en attente]+[AnalyseCroisee].[conclu]) AS TestOperation.
Cela ne fonctionne pas et j'obtiens le message d'erreur:
"Vous avez essayé d'exécuter une requête ne comprenant pas l'expression spécifiée 'CodeVendeur' comme partie de la fonction d'agrégat".  
Cela doit être une erreur de novice mais je n'ai pas compris l'explication de l'aide à ce sujet.  
Comment contourner ce problème?
 
 
 

Reply

Marsh Posté le 14-10-2005 à 09:03:16   

Reply

Marsh Posté le 14-10-2005 à 14:51:57    

Je devine que le "group by" a été oublié. Il faut faire :

SELECT [AnalyseCroisee].[CodeVendeur],[AnalyseCroisee].[en attente], [AnalyseCroisee].[conclu],],[AnalyseCroisee].[annulé],[refusé],
SUM([AnalyseCroisee].[en attente]+[AnalyseCroisee].[conclu]) AS TestOperation
 FROM AnalyseCroisee
GROUP BY
[AnalyseCroisee].[CodeVendeur],[AnalyseCroisee].[en attente], [AnalyseCroisee].[conclu],],[AnalyseCroisee].[annulé],[refusé]

:)


Message édité par olivthill le 14-10-2005 à 14:52:14
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed