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

PL/SQL Oracle Discussion :

espace en debut ou fin de champ dans un select.


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Inscrit en
    Octobre 2003
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 188
    Par défaut espace en debut ou fin de champ dans un select.
    Bonjour.

    je suis confronté à un problème depuis plusieurs jours et malgré mes recherches je n'ai pas trouvé de solution.

    j'ai une requête sql qui commence ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     select decode(f.Code,71,5,72,decode(c.MethodeDateFinVal,1,3,1),75,4)
     "TypeProduit"  ...
    Quoi que je fasse, il renvoie
    les quotes ne sont là que pour vous montrer qu'il ajoute des espaces.
    J'ai essayé col TypeProduit format 999 ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select trim(decode(f.Code,71,5,72,decode(c.MethodeDateFinVal,1,3,1),75,4))
     "TypeProduit"  ...
    dans le meilleur des cas j'obtiens
    J'ai aussi testé set trimout on et set trimspool on mais ils n'ont d'effet que sur la fin de la ligne pas dans les champs.

    Merci d'avance de votre aide

    Olivier

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    Etrange...
    Un LTRIM dans la requête règlera le problème mais il vaut mieux en connaître l'origine.
    Quel est le format de vos colonnes? MethodeDateFinVal est une date?

  3. #3
    Membre confirmé

    Inscrit en
    Octobre 2003
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 188
    Par défaut
    MethodeDateFinVal est un champ de type number (5).

    LTrim, RTrim ou Trim ne résolvent rien.

    j'ai oublié de préciser que je suis en oracle 8i.

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    Est-ce la seule colonne de votre requête (autrement dit êtes-vous sûr que ce'st bien celle-ci qui est renvoyée)?
    Le fait que ce soit toujours la même valeur laisse à penser que le problème est ailleurs.

  5. #5
    Membre confirmé

    Inscrit en
    Octobre 2003
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 188
    Par défaut
    J'ai plusieurs colonnes dans la requête. Le 3 n'est qu'une des valeurs retournées. l'exemple que j'ai mis servait surtout à mettre en évidence les blancs que j'obtiens. Et j'ai le même problème pour d'autres colonnes de la requête.

    j'ai essayé la chose suivante
    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
     
    SQL> set numformat 999;
    SQL> select 42 "titre 1", 36 "titre 2" from dual;
     
    titre 1 titre 2
    ------- -------
         42      36
     
    SQL> select '42' "titre 1", '36' "titre 2" from dual;
     
    ti ti
    -- --
    42 36
     
    SQL>
    je ne comprends pas pourquoi il ajoute des blancs dans les champs quand il affiche le titre complet de la colonne.

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    Il fallait commencer par là.
    C'est le paramétrage de SqlPlus qui est en cause. Les valeurs retournées sont les bonnes.
    Pour une chaîne, le titre s'adapte à sa longueur, pas pour un nombre. Il y a probablement un paramètre pour arranger cela.
    Vous pouvez aussi supprimer les titres, et tout un tas de choses.

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/07/2010, 15h16
  2. ajout espace vide(253) en fin d'enregistrement dans fichier
    Par carmella dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 01/06/2008, 19h34
  3. Réponses: 3
    Dernier message: 22/11/2006, 10h35
  4. [interbase][SQL] concatener 2 champs dans le select
    Par Harry dans le forum Bases de données
    Réponses: 10
    Dernier message: 09/03/2006, 06h45
  5. Réponses: 3
    Dernier message: 28/10/2005, 14h38

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