IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Problème de décimales dans une requête


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 66
    Points : 43
    Points
    43
    Par défaut Problème de décimales dans une requête
    Bonjour, j'ai une requête toute bête qui fait une somme du Reste à Faire (RAF) pour chaque Tache.
    Voici la requête :
    SELECT evol_tache_raf.Tache, Sum(evol_tache_raf.RAF) AS SommeDeRAF
    FROM evol_tache_raf
    GROUP BY evol_tache_raf.Tache;
    Dans ma table evol_tache_raf, j'ai des valeurs du type : 1.2, 1.5 etc.
    Or, ma requête me donne des résultats du type :
    2,70000004768372 au lieu de 2,7.

    C'est bizarre, je ne comprend pas. Quelqu'un a une idée ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    il me semble que tu peux arrondire les valeurs avec une commande du genre

    round(AVG(valeur),2) (pour deux décimales)

    mais je suis pas sur

  3. #3
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 66
    Points : 43
    Points
    43
    Par défaut
    ça n'a pas l'air de marche.
    merci qd même

  4. #4
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 66
    Points : 43
    Points
    43
    Par défaut
    En fait, Round(x,1) me suffit et ça marche très bien. Merci

  5. #5
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 273
    Points : 258
    Points
    258
    Par défaut
    J'ai le meme probleme avec une requete mais j'aimerais si possible eviter les arrondis car je ne sais pas encore de quelle precision seront les chiffres rentres...

    J'ai une table T_Scrap avec les valeurs suivantes, et Quantite etant de format Single:

    Code Quantite
    Code1 2.52
    Code2 2.4512

    Une requete Q_Scrap me fait la somme des quantites et regroupe par code, j'ai comme resultat:

    Code1 2.51999998092651
    Code2 2.45120000839233

    Est-ce que vous savez a quoi ces erreurs sont dues? Comment on peut y remedier?

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Bonjour,
    Citation Envoyé par catoucat
    J'ai le meme probleme avec une requete mais j'aimerais si possible eviter les arrondis car je ne sais pas encore de quelle precision seront les chiffres rentres...
    [...]
    Est-ce que vous savez a quoi ces erreurs sont dues? Comment on peut y remedier?
    Ce problème apparaît lors des calculs sur des regroupements de données (ex. une somme) notamment pour des nombres en virgule flottante (nombres réels simple précision (Single) ou double précision (Double)).

    Une solution simple consiste à utiliser le type de données Décimal à la place.

  7. #7
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 273
    Points : 258
    Points
    258
    Par défaut
    Merci je n'avais meme pas remarque qu'il yavait un type Decimal... mais il prend 12 octets au lieu de 4 donc je crois que je vais rester a mon vieux Single et j'ajusterai le format et les arrondis...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de précision dans une requête
    Par Le Pharaon dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 09/08/2006, 14h16
  2. décimales dans une requête
    Par gregius dans le forum Access
    Réponses: 2
    Dernier message: 30/03/2006, 23h54
  3. [10g] Problème de privilège dans une requête
    Par hotkebab99 dans le forum Oracle
    Réponses: 6
    Dernier message: 01/03/2006, 12h00
  4. Problème de perfomances dans une requête
    Par claralavraie dans le forum Langage SQL
    Réponses: 1
    Dernier message: 05/01/2006, 14h25
  5. Problème de débutant dans une requête
    Par decour dans le forum Access
    Réponses: 7
    Dernier message: 14/10/2005, 14h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo