|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 4 ![]() |
Bonjour,
Novice sur SQL SRV 2k5. Je souhaite faire la chose suivante : Une table T_MOY: id, annee, indic_1,..5 T_MOY: ID | ANNEE | INDIC_1 | INDIC_2 | evol 1 2007 100 50 ... 2 2008 200 75 ... 3 2009 100 150 ... 4 2010 300 100 ... Je souhaite faire le calcul suivant: ( Somme(indic_1) pour l'année 2007 / Somme(indic_1) pour l'année MIN -1 ) -1 Pour indic_1: Pour la premiere ligne ca donnerait : 0 Pour la ligne suivante : 100 ( Somme(indic_1) pour l'année 2008 / Somme(indic_1) pour l'année 2007 ) -1 Je dois incrémenter les années en fonction de +1 et je ne vois pas comment faire cela en SQL ou TSQL. Je dois créer une boucle qui va compter de année = min(année) +1 jusqu'à année en cours -1 et réaliser le calcul pour chaque ligne et chaque indicateur. en ce que quelqu'un à une idée? Est-ce assez clair ? Merci de votre aide. |
|
|
00
|
|
|
#2 | ||
|
Invité de passage
![]() Inscription : juillet 2010 Messages : 2 ![]() |
Bonjour,
Je suis pas trop d'accord avec les résultats de ton calcul (200/100)-1 = 1 Voila un exemple qui répond à ton problème: Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 4 ![]() |
Merci etienne56 pour ta réponse.
en fait, tu as raison, mon calcul n'est pas tout à fait fait correct. ca serait pluôt : ( Somme indicateur pour annee 2008 / somme indicateur pour l'année 2007 ) -1 / (n - 1 - ref) ( n - 1 - ref ) = 2011 - 1 - 2006 ref=2006. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 4 ![]() |
Pardon et n = année en cours (2011).
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() IED décisionnel Inscription : mai 2011 Messages : 33 ![]() |
Donc tu as juste à ajouter une ligne qui fait le calcul
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 4 ![]() |
je te remercie de ton aide.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com