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

SQL Oracle Discussion :

Problème avec concat()


Sujet :

SQL Oracle

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut Problème avec concat()
    Bonjour,

    Voici ma requête sql :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
     
    DROP VIEW DOSMED.V_CHHF_LIST_PAT_SI1;
     
    /* Formatted on 21/09/2011 15:23:17 (QP5 v5.136.908.31019) */
    CREATE OR REPLACE FORCE VIEW DOSMED.V_CHHF_LIST_PAT_SI1
    (
       TITRE,
       NOM,
       PRENOM,
       DTENAI,
       NUMCHAMBRE,
       COMPTERENDU,
       DTECRE
    )
    AS
       SELECT CASE TITRE
             WHEN 'Monsieur' then 'Mr'
             WHEN 'Madame' then 'Mme'
       END AS TITRE  || ' ' || NOM   || ' ' || PRENOM
              ,DTENAI,
               SUBSTR(NUMCHAMBRE,3),
              COMPTERENDU,
              DTECRE
         FROM (SELECT TITRE,
                      NOM,
                      PRENOM,
                      DTENAI,
                      NUMCHAMBRE,
                      COMPTERENDU,
                      DTECRE,
                      ROW_NUMBER ()
                         OVER (PARTITION BY NUMCHAMBRE ORDER BY DTECRE DESC)
                         rn
                 FROM V_CHHF_LIST_PAT_SI)
        WHERE rn = 1;
    Je voudrai concaténer le titre, non et prénom mais ça ne fonctionne pas !

    Mon message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ORA-00923: FROM keyword not found where expected
    Merci

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Ca, c'est du débugage de requête où en cherchant 10 secondes on trouve.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT CASE TITRE
             WHEN 'Monsieur' then 'Mr'
             WHEN 'Madame' then 'Mme'
       END AS TITRE  || ' ' || NOM   || ' ' || PRENOM
    un alias doit toujours être placé à la fin.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Je dois obtenir le titre concaténé avec le nom et prénom .

    J'ai essayé plusieurs choses mais sans succès .

    Ex:

    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
    18
    19
    20
    21
    22
     
     SELECT 
              DTENAI,
               SUBSTR(NUMCHAMBRE,3) AS N,
              COMPTERENDU,
              DTECRE,
              CASE TITRE
             WHEN 'Monsieur' then 'Mr'
             WHEN 'Madame' then 'Mme'
       END AS TITRE || ' ' || NOM || ' ' || PRENOM
         FROM (SELECT TITRE,
                      NOM,
                      PRENOM,
                      DTENAI,
                      NUMCHAMBRE,
                      COMPTERENDU,
                      DTECRE,
                      ROW_NUMBER ()
                         OVER (PARTITION BY NUMCHAMBRE ORDER BY DTECRE DESC)
                         rn
                 FROM V_CHHF_LIST_PAT_SI)
        WHERE rn = 1
    un alias doit toujours être placé à la fin.
    Pourriez vous me donner un exemple .

    Merci

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Vous avez une erreur simple de syntaxe sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       END AS TITRE || ' ' || NOM || ' ' || PRENOM

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Je me doute bien merci .

    Mais je ne vois pas laquelle .

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Encore une aide, si vous ne trouvez pas je sors le biberon !
    Citation Envoyé par McM Voir le message
    un alias doit toujours être placé à la fin [de l'expression qu'il qualifie].

  7. #7
    Membre très actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    Bonjour,

    enlève le et met le à la fin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    END  || ' ' || NOM || ' ' || PRENOM  AS TITRE

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Je ne comprends pas désolé ceci fonctionne :

    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
    18
    19
    20
    21
    22
    23
    24
     
    SELECT CASE TITRE
                 WHEN 'Monsieur' THEN 'Mr'
                 WHEN 'Madame' THEN 'Mme'
              END
                 AS TITRE,
              NOM,
              PRENOM,
              DTENAI,
              SUBSTR (NUMCHAMBRE, 3),
              COMPTERENDU,
              DTECRE
         FROM (SELECT TITRE,
                      NOM,
                      PRENOM,
                      DTENAI,
                      NUMCHAMBRE,
                      COMPTERENDU,
                      DTECRE,
                      ROW_NUMBER ()
                         OVER (PARTITION BY NUMCHAMBRE ORDER BY DTECRE DESC)
                         rn
                 FROM V_CHHF_LIST_PAT_SI)
        WHERE rn = 1;
    Je voudrai juste faire une concaténation du titre avec le nom et le prénom .

    si vous ne trouvez pas je sors le biberon !
    Je suis la pour apprendre

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Hen ok maintenant pour la prochaine fois je le saurai .
    C'est vrai que c est plus logique comme ça

    Merci

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

Discussions similaires

  1. Problème avec la fonction CONCAT
    Par bbhighrock dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 14/12/2012, 16h12
  2. Problème avec un concat et xsl
    Par radiobrain dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 11/06/2009, 11h26
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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