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

Oracle Discussion :

incompréhension sur SUBSTR


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de awalter1
    Inscrit en
    Août 2004
    Messages
    994
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 994
    Par défaut incompréhension sur SUBSTR
    Bonjour,
    En oracle 10 sous unix, j'ai fait les tests suivants:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SQL> select TO_CHAR('45','000') from dual;
     
    TO_C
    ----
     045
     
    SQL> select substr('045',2) from dual;
     
    SU
    --
    45
     
    SQL> select SUBSTR(TO_CHAR('45','000'),2) from dual;
     
    SUB
    ---
    045
    Je m'attendais dans ce dernier cas à avoir 45 et pas 045.

    Quelqu'un a t'il une explication ?
    Le but de la manoeuvre est de convertir une colonne de type INTEGER en une chaine de caractères complètée par des 0 à gauche, en fonction d'une longueur i connu (ici i=2)
    Merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 178
    Par défaut
    Effectivement pour les nombres positifs il y a un blanc au début, qui semble réservé pour le signe - des nombres négatifs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    rbaraer@Ora10g> select TO_CHAR(45, '000') from dual;
     
    TO_C
    ----
     045
     
    rbaraer@Ora10g> select TO_CHAR(-45, '000') from dual;
     
    TO_C
    ----
    -045
     
    rbaraer@Ora10g>
    Cordialement,

    rbaraer

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

Discussions similaires

  1. [Fonction][VBA]incompréhension sur datediff
    Par portecd dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/04/2007, 13h57
  2. aide sur substring ?
    Par innova dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 26/11/2006, 11h47
  3. [JRE] Erreur incompréhensible sur solaris
    Par Yoops dans le forum Langage
    Réponses: 1
    Dernier message: 31/05/2006, 14h39
  4. incompréhension sur l'utilisation des sessions
    Par cladsam dans le forum Langage
    Réponses: 12
    Dernier message: 31/01/2006, 12h28
  5. problème sur substring (fonction inconnue)
    Par nerick dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 13/12/2005, 15h46

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