|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |
|
Membre Expert
![]() ![]() |
Salut
j'ai dans une vue un champ calculé Citation:
pour le moment j'ai changé la valeur "0" par "-1" pour ne pas avoir cette erreur ! j'ai en quelques sortes rapporté l'erreur mais c'est pas très propre, donc je me demande si c'est possible de le contourner au niveau du SGBD par l'utilisation d'une exception mais à condition que la requête s'achève ?! merci par avance.
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
|
00
|
|
|
#2 | ||
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 612 ![]() |
bonjour,
Utilises COALESCE pour null , IFF ou CASE Code :
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius |
||
|
|
00
|
|
|
#3 |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 754 ![]() |
Salut
Comme on ne peut pas estimer une consommation avec un volume égal à 0, je renverrai plutôt la valeur NULL. Code :
SELECT ENERGIE / NULLIF(VOLUME, 0) AS TAUX_CONSOMMATION FROM ... @+ Claudius
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() |
Salut !
merci Cl@udius, ta solution est impeccable . merci à toi aussi serge même si j'ai pas testé ta proposition autre chose tant qu'on y est; en travaillant avec les agrégats je me suis aperçus que la moyenne arithmétique prend aussi les valeurs "vides" ce qui fausse évidemment le résultat d'où ma question : comment faire pour ne prendre que les valeurs non nulles dans la moyenne ? merciiiiiiiiiiiiiiiiii
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
|
|
#5 |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 754 ![]() |
Re
Sauf erreur de ma part la fonction AVG ne tient pas compte des valeurs nulles (NULL) dans son calcul. Donc a priori pas de problème.
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() Olivier DehorterIngenieur de recherche - Ecologue Inscription : juin 2003 Messages : 697 ![]() |
je confirme
dans le cas contraire, cela serait une catastrophe statistique. ![]() Just-Soft, es tu sur de n'avoir pas fait un COALESCE quelque part qui aurait remplace des NULLs par un zero ???? |
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() ![]() |
Exact, l'erreur me revient je travaille avec FastReport et javais oublié que j'ai positionné "HideZeros" à vrai
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() |
Re,
je fais encore appel à vous dans la même vue j'ai une opération de type : champ1/champ2 sachant que champ1 et 2 sont de type entier donc si le résultat est < 0 le système me rend 0 alors que j'ai besoin du résultat même si si de l'ordre de 10-4 ! comment faire dans ce cas ? merci encore.
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
|
|
#9 | ||
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 754 ![]() |
Fais un CAST avec la précision que tu souhaites.
Code :
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
||
|
|
00
|
|
|
#10 |
|
Membre émérite
![]() Olivier DehorterIngenieur de recherche - Ecologue Inscription : juin 2003 Messages : 697 ![]() |
re bonjour
la division de 2 valeurs entieres donne une valeur entiere. Il convient donc de caster les 2 entier, ou meme seulement un des entier en reel alors le resultat sera un reel mince, battu par claudius |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() ![]() |
merci les champions
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com