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

Langage SQL Discussion :

RPAD dans un where


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 104
    Points
    104
    Par défaut RPAD dans un where
    Bonjour

    Sous Oracle, je voudrais comparer la valeur d'une colonne avec un rpad (machaine, 5).

    Le probleme est qu'apparemment on ne peut pas mettre de rpad dans une clause where...

    Dans ma procédure stockée,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT COUNT (*)
                  FROM matable
                 WHERE (id = RPAD('1108', 5));
    ne fonctionne pas (invalid sql statement).

    Alors que si je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select rpad ('1108', 5) from dual;
    j'ai bien le résultat attendu soit '1108 '

    Est ce normal ?

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 175
    Points : 129
    Points
    129
    Par défaut
    Salut,
    je n'ai pas l'habitude de poster mais comme ça en passant tu as essayé ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT COUNT (*)
                  FROM matable
                 WHERE (id = (select rpad ('1108', 5) from dual));

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par dut-dut Voir le message
    Salut,
    je n'ai pas l'habitude de poster mais comme ça en passant tu as essayé ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT COUNT (*)
                  FROM matable
                 WHERE (id = (select rpad ('1108', 5) from dual));
    Oui c'est ce que j'ai fait, mais je trouve ca bizzare sur de l'oracle de devoir faire ca. C'est comme si on devait faire un select from dual pour formatter une date.

    Merci quand même pour la réponse

  4. #4
    Membre régulier
    Inscrit en
    Septembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 63
    Points : 71
    Points
    71
    Par défaut
    Je ne vois pas pourquoi le RPAD ne peut pas etre utilisé dans une clause WHERE
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM dual WHERE dummy = rpad('XEEEE', 1)
    Ca me renvoit bien 'X'

    voir meme mieux je prends ta requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT COUNT (*)
                  FROM dual
                 WHERE (dummy = RPAD('1108', 5));
    Dans laquelle j'ai juste mit la table et le bon nom de champ et hop ca passe...
    Si ca ne passe pas chez toi donnes nous ta version de SGBD ca vient peut etre de ca...

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 104
    Points
    104
    Par défaut
    Oui en fait ca marche comme ca maintenant...je sais pas ce que j'avais ce jour la lol

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

Discussions similaires

  1. [SQL 9i ] format de date dans un where
    Par booth dans le forum Oracle
    Réponses: 5
    Dernier message: 14/10/2005, 10h23
  2. Réponses: 9
    Dernier message: 05/07/2005, 08h37
  3. INNER JOIN ... ON ... ou jointure dans clause where
    Par schmur1 dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 28/06/2005, 09h16
  4. Plusieurs clauses OR dans le WHERE
    Par NeHuS dans le forum Langage SQL
    Réponses: 3
    Dernier message: 28/01/2005, 16h19
  5. 2 champs dans un where , possible en sql server ?
    Par voyageur dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 19/10/2004, 05h01

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