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 :

Changement de format de nombre


Sujet :

Développement SQL Server

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 352
    Points : 182
    Points
    182
    Par défaut Changement de format de nombre
    bonjour à tous,

    dans ma colonne dans SQL je trouve 2 types de format de nombre tel qu'on voit sur l'image jointe

    je souhaiterai convertir toutes les valeurs de ce format "3.3035496029747098E+17" en valeur complete comme ceci "330354960297470980", c'est a dire en supprimer le point et la puissance. Sans toucher les autres valeurs qui sont deja de ce format.
    Je précise que cette colonne en question est actuellement en NVARCHAR, je souhaiterai donc corriger ce pb pour tout transformer en BIGINT

    pouvez vous svp m'aider ?
    quel requete pourrait ce type de correction ?

    merci
    Images attachées Images attachées  

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    C'est un peu laborieux, mais ça a l'air de fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    declare @toto nvarchar(25) = '3.3035496029747098e+17'
    select case charindex('e+', @toto, 1)
             when 0
             then cast(@toto as bigint)
             else cast(cast(substring(@toto, 1, charindex('e+', @toto, 1) - 1) as numeric(25,16))
                * power(cast(10 as bigint), cast(substring(@toto, charindex('e+', @toto, 1) + 2, len(@toto) - charindex('e+', @toto, 1) - 1) as bigint)) as bigint)
            end
     
    330354960297470980

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

Discussions similaires

  1. Changement du format des nombres dans R.
    Par Oli1212 dans le forum R
    Réponses: 2
    Dernier message: 06/12/2020, 21h48
  2. Réponses: 2
    Dernier message: 21/05/2015, 10h29
  3. [Nombre]formater le nombre de décimal après une virgule.
    Par PascalCmoa dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 09/03/2007, 10h40
  4. Formater un nombre avec Crystal Reports
    Par Soph70 dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 05/07/2005, 19h27
  5. Format de nombre
    Par shawinnigan dans le forum Oracle
    Réponses: 12
    Dernier message: 23/08/2004, 12h37

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