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

MS SQL Server Discussion :

CONVERSION de résultat de calcul en DECIMAL: pas d'affichage des décimales!


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Par défaut CONVERSION de résultat de calcul en DECIMAL: pas d'affichage des décimales!
    Bonjour

    J'ai une requête pour laquelle j'ai 3 colonnes, je souhaite que la 3ème colonne soit égale = [COLONNE2]*100/[COLONNE1]

    Mon résultat est un NOMBRE ENTIER, or, je veux un pourcentage avec 2 décimales

    -Si je fais CONVERT(DECIMAL,[COLONNE2*100]/[COLONNE1]) j'obtiens toujours un NOMBRE ENTIER

    -Si je fais CONVERT(REAL,[COLONNE2*100]/[COLONNE1]) je n'obtiens qu'une seule décimale, qui est toujours 0

    Comment arriver à mon résultat avec 2 vraies décimales?

    Merci

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Bonjour,
    Je pense qu'il faut convertir chaque colonne avant l'opération.

  3. #3
    Membre confirmé
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Par défaut
    J'ai essayé...même punition!

  4. #4
    Membre averti
    Inscrit en
    Août 2005
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 22
    Par défaut
    Je confirme, il faut déja convertir les 2 colonne s

    select convert(decimal(5,2),round((convert(decimal(5,2),[Colonne1])*100/convert(decimal(5,2),[colonne2])),2))
    from table

  5. #5
    Membre confirmé
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Par défaut
    Lorsque je convertis chacune de mes 2 colonnes avant lla colonne de calcul de la selon le modèle suivant:

    CONVERT(DECIMAL, MACOLONNE)

    Le résultat du calcul de ma 3ème colonne ne change pas

    Si je convertis sous le modèle:

    CONVERT(DECIMAL(5,2), MACOLONNE) j'obtiens le message:

    "Dépassement de capacité lors de la conversion de numeric au type de données numeric"

  6. #6
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select round(cast(COLONNE1 as decimal(9,2)) / cast(COLONNE3 as decimal(9,2)), 2)

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

Discussions similaires

  1. [PDO] Pas d'affichage des résultats
    Par jmtrivia dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 04/05/2010, 12h05
  2. pas d'affichage des statistiques dans navigateur
    Par claire274 dans le forum Statistiques
    Réponses: 2
    Dernier message: 05/07/2008, 00h51
  3. [AJAX] [Struts] Pas d'affichage des boutons lors du raffraîchissement
    Par AnneB dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/07/2007, 14h29
  4. Pas d'affichage des valeurs nulles avec un COUNT
    Par phoenixz22 dans le forum Langage SQL
    Réponses: 13
    Dernier message: 30/05/2007, 19h39
  5. [Swing][ListCellRenderer]Pas d'affichage des composants
    Par Cyberwan dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 08/02/2006, 01h22

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