Calculer le pour Cent de Différence dans SQL Server
J'ai deux mois à deux valeurs, par exemple:
July-2013 1838.08
Aug-2013 3500.08
Comment puis-je calculer la différence de pourcentage en août par rapport à juillet?
- Voulez-vous vraiment la Variance statistique de deux nombres? Ou voulez-vous dire quelque chose d'autre?
- Je voudrais calculer le pourcentage d'augmentation/de diminution par rapport au mois précédent
- Ah, qui est appelé le "pourcentage de la différence". "Variance" est une chose tout à fait différente.
- Je n'ai pas dit que la Variance
- L'original de votre post et le titre n'a-dire de "Variance" (je viens de vérifier le journal des modifications pour être sûr).
- désolé :), vous avez raison, aucune idée de comment le faire?
Vous devez vous connecter pour publier un commentaire.
De la formule pour ce qui est facile c'est
(Curr-Prev)*100.0/Prev
, ce n'est pas clair, c'est la façon de l'appliquer, puisque nous ne connaissons pas votre définition de la table, les contenus ou les touches, et ne sais donc pas comment le terme générique de sélectionner un mois et c'est la valeur précédente. Mais, le codage en dur elle serait comme ça:Le problème avec le travail pourcentage de changements est que vous devez être prudent lorsque le "la vieille valeur" est 0 ou vous obtiendrez une erreur.
Une approche à l'aide de nullif(old_Value, 0), mais alors le problème c'est lorsque les valeurs sont 0 vous demandez Nouvelle_valeur/NULL qui est la nouvelle valeur. (certainement pas le % de variation)
J'ai travaillé autour d'elle comme ceci:
J'ai probablement jeté beaucoup plus de fontes que nécessaire, mais il fonctionne bien pour moi. Donne Na lorsque cela est nécessaire et 0 lorsque nécessaire.
de donner du crédit à fololwing post
http://blog.sqlauthority.com/2008/01/20/sql-server-introduction-to-statistical-functions-var-stdevp-stdev-varp/