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

Développement SQL Server Discussion :

Problème de performance sur aggrégats


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Par défaut Problème de performance sur aggrégats
    Bonjour,

    J'ai une table composée entre autre d'un champ numérique de type integer et d'un champ numérique de type decimal(10,2).

    Lorsque je fait une somme sur le champ integer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SUM(monChampInteger) FROM maTable
    j'obtiens le résultat en 9 secondes alors qu'avec une somme sur le champ décimal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SUM(monChampDécimal) FROM maTable
    j'obtiens le résultat en 16 secondes

    Est-ce que quelqu'un a déjà été confronté à ce même problème ou aurait une explication ?

    Stéphane

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    un INT est stocké sur 4 octets, alors qu'un DECIMAL avec une précision de 1 (la plus petite) coûte 5 octets. Pour un DECIMAL(10,2) on a une précision de 10, donc cela coûte 9 octets.

    La quantité de données à agréger est donc plus conséquente, surtout si vous n'avez pas indexé la colonne ...

    @++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Par défaut
    Merci pour l'info.

    De plus, je n'avais pas du tout pensé aux index et effectivement, il y avait également un problème de ce coté.

    Merci encore
    Stéphane

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

Discussions similaires

  1. Problème de performances sur site PHP - Zend
    Par trashyquaker dans le forum Firefox
    Réponses: 2
    Dernier message: 08/09/2008, 21h44
  2. problème de performance sur requête avec Tsearch2
    Par Morpheas dans le forum PostgreSQL
    Réponses: 0
    Dernier message: 05/02/2008, 12h25
  3. Problèmes de performances sur une base oracle 10g
    Par ORAMEL dans le forum Oracle
    Réponses: 3
    Dernier message: 11/09/2007, 09h11
  4. Réponses: 3
    Dernier message: 20/04/2007, 12h19
  5. Problème de performance sur une "grosse" BD
    Par frechy dans le forum Installation
    Réponses: 9
    Dernier message: 19/09/2005, 16h52

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