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 :

Comment formater une chaîne ?


Sujet :

MS SQL Server

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 309
    Par défaut Comment formater une chaîne ?
    Salut

    J'ai un variable numérique:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DECLARE @iDay AS NUMERIC
    Je voudrais pouvoir la comparer à une chaîne de 2 caractères, je voudrais donc convertir ce numéro en 2 caractères. Si j'ai 1 je voudrais obtenir '01', etc.

    Merci

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DECLARE @Mavchar varchar(2)
    Set @Mavchar= left(('0'+ cast(@iDay as varchar(2))),2)
    Le reste, à vous de voir pour les comparaisons.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 309
    Par défaut
    Le problème, avec cette solution, est que si mon @iDay = 12 ça va me donner 01 au lieu de 12.

    Moi je voudrais obtenir 01, 02, 03, 04, 05, 06, 07, 08 ou 09 si @iDay < 10, sinon obtenir les 2 chiffres si > 9.


  4. #4
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Excusez-moi,
    J'avais confondu left par right
    voici la correction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DECLARE @Mavchar varchar(2), @iday numeric 
    set @iday=1
    Set @Mavchar= Right(('0'+ cast(@iDay as varchar(2))),2) 
    select @Mavchar
    Merci de penser au tag [Résolu].

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/02/2006, 18h26
  2. comment costruire une chaîne de connexion ADO runtime
    Par lassad dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/10/2005, 14h16
  3. Comment découper une chaîne de caractères en VBA
    Par TomPad dans le forum Access
    Réponses: 3
    Dernier message: 23/06/2005, 09h58
  4. Réponses: 5
    Dernier message: 15/02/2005, 18h07
  5. Réponses: 3
    Dernier message: 28/09/2003, 10h46

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