|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 9 ![]() |
bonjour, je souhaite effectuer des pourcentages, des médianes, en language SQL directement je n'y arrive pas car il n'y a que la division entière.
il ya aussi des problèmes lors de division avec des zeros. c a d que lorsque je divise une ma variable nb/total si le total=0 il y a une erreur je ne comprend pas . merci d'avance à ceux qui me reponderont ps : je suis un novise en PostgreSQL mais pas en SQL |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : mars 2004 Messages : 89 ![]() |
bonjour boris_ska,
je pense que c'est une regle relativement logique, d'autant plus si vous faites des statistiques. 5/0=...... ceci dit vous avez la possibilité des traiter les exceptions... |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 9 ![]() |
j'ai pas réussi car
nb / tot l'erreur est "division by zero" sachant qu'il y a beaucoup de zero dans ma variable tot et que l'on doit quand meme afficher le resultat, je ne sais comment faire si je ne suis pas explicite dites le moi ! merci |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : mars 2004 Messages : 89 ![]() |
Prenez votre calculatrice de bureau et divisez n'importequel chiffre par 0 vous aurez vite votre réponse!!!!
PS: un petit indice votre probleme ne vient pas de votre base de donnée!!!!!!! |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 9 ![]() |
Merci mais j'ai mal précié une chose dsl
mais c'est une division par >0.00000001 alors que les variables sont de type float , ou decimal(5,2) donc diviser par 0.0 ce qui <> 0 je ne sais pas si je me fait comprendre |
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : mars 2004 Messages : 89 ![]() |
D'accord merci pour la précision
http://www.postgresql.org/docs/7.4/static/datatype.html#DATATYPE-NUMERIC-TABLE |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 9 ![]() |
merci
mais il y a d'autres problème car la valeur est souvent 0 mais le format de variable est et doit etre inchangée mais pas de problème sinon pour les médianes je cherche toujours ! |
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : mars 2004 Messages : 89 ![]() |
bah à moins de traiter votre division par 0, qui est impossible, comme une exception je ne vois pas d'autres solutions si vous ne pouvez changer le typage.
Pour votre médiane, je pense qu'une fonction conviendrait avec la formule du type (la formule varie en fonction des valeurs que vous avez à traiter évidemment...): x=Médiane d= limite inf de la classe qui contient la mediane i= intervalle de la classe qui contient la mediane e=effectif cumulé croissant de la classe qui precede la mediane c=effectif simple de la classe qui contient la mediane n= N/2 N=effectif total |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com