none
arrondi de nombre RRS feed

  • Question

  • bonjour,

    j'aimerais mettre des nombres sous la forme décimale tronquée avec 2 chiffres après la virgule

     

    j'ai trouvé la commande SELECT CONVERT(Decimal(5,2), '11.4444')
    j'ai beau lire l'aide, je ne trouve nulle part la signification des nombres entre parenthèses après "Decimal"

    dans mon exemple, si je remplace "5" par un nombre plus petit, j'obtiens une erreur
    je ne comprends pas
    pouvez-vous m'éclairer SVP? merci d'avance

     

    édit: j'ai trouvé cette syntaxe aussi: select cast '123.4' as decimal(9,2)

    mercredi 2 juin 2010 08:26

Réponses

  • Bonjour,

    Decimal(5,2)  : 5 est la précision, c'est à dire le nombre de chiffres à droite ou à gauche de la virgule.

     2 est le nombre de chiffres après la virgule.

    Si tu obtiens une erreur, c'est que le nombre de chiffres avant la virgule est trop grand par rapport au type Decimal spécifié.

    mercredi 2 juin 2010 09:01

Toutes les réponses

  • Bonjour,

    Decimal(5,2)  : 5 est la précision, c'est à dire le nombre de chiffres à droite ou à gauche de la virgule.

     2 est le nombre de chiffres après la virgule.

    Si tu obtiens une erreur, c'est que le nombre de chiffres avant la virgule est trop grand par rapport au type Decimal spécifié.

    mercredi 2 juin 2010 09:01
  • merci pour ta réponse!

    je suis désolé mais je n'arrive pas à comprendre la notion de "précision"

     

    dans mon exemple, 11.4444 comprend 6 chiffres, deux à gauche de la virgule et quatre à droite, le résultat 11.44 comporte 4 chiffres

    decimal(5,2) fonctionne tandis que decimal(4,2) plante

    je ne comprends pas

    peux-tu préciser STP? merci encore

    mercredi 2 juin 2010 09:28
  • Je viens d'essayer :

    SELECT convert(Decimal(4,2),'11.4444')

    fonctionne sans erreur.

    mercredi 2 juin 2010 10:06
  • effectivement...

    je me suis emmêlé les pinceaux apparemment dans tous mes tests

    désolé, merci pour tes retours!

     

    mercredi 2 juin 2010 10:14