Bonjour à tous,

J'essaie de créer une requête SQL me permettant de diviser un champ par sa sommation. Exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Annee     Canal     Valeur
2011      01        1872
2010      01        2978
2009      01        3874
2011      02        2983
2010      02        1234
Je désire donc récupérer ces données:
Canal 01 - Année 2011 : 21,46%
Canal 01 - Année 2010 : 34,14%
Canal 01 - Année 2009 : 44,41%

Canal 02 - Année 2011 : 70,74%
Canal 02 - Année 2010 : 29,26%
Il s'agit donc de diviser la "Valeur" de chaque ligne par la sommation de la colonne "Valeur" groupée par année & canal.

Si quelqu'un pourrait m'aider, ce serait grandement apprécié !!

Merci

*NOTE: Je travail sous Access 2007...

*EDIT: Actuellement, mon code ressemble à cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT T_EXCEL_Demande.NoAnnPre, T_PIL_Canaux.CodeCan, T_EXCEL_Demande.Total, Sum(T_EXCEL_Demande_1.Total) AS SommeDeTotal, IIf(T_EXCEL_Demande.Total=0,0,[T_EXCEL_Demande]![Total]/Sum([T_EXCEL_Demande_1]![Total])) AS Pourcent
FROM (T_EXCEL_Demande INNER JOIN T_EXCEL_Demande AS T_EXCEL_Demande_1 ON T_EXCEL_Demande.NoCan = T_EXCEL_Demande_1.NoCan) INNER JOIN T_PIL_Canaux ON T_EXCEL_Demande.NoCan = T_PIL_Canaux.NoCan
WHERE (((T_EXCEL_Demande.NoAnnPre)=0))
GROUP BY T_EXCEL_Demande.NoAnnPre, T_PIL_Canaux.CodeCan, T_EXCEL_Demande.Total;
Cependant, la colonne "Total" retourne des valeurs impossibles et plutôt que d'avoir ~100 occurrences, il m'en retourne ~1000.