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 :

La requête ne se termine pas correctement


Sujet :

SQL Oracle

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juin 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 37
    Points : 23
    Points
    23
    Par défaut La requête ne se termine pas correctement
    Bonjour,
    Je ne parviens pas à utiliser les alias dans le requêteur de la base de données.
    Le message d'erreur est "ORA-00933: la commande SQL ne se termine pas correctement"

    Je ne parviens pas à trouver l'erreur dans la requête :

    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
     
    select distinct sejour.sejo_num_sej, sejour.sejo_dat_deb, sejour.sejo_dat_fin, actmed.mede_nom_usu, actmed.mede_prenom, actmed.mede_id_cage, activite.ACSA_COD_ACT_D, activite.acsa_libelle_d, etab.etab_lib_etb
     
    from sad_activite_saisies as activite
    join ide_medecin on sad_activite_saisies.acsa_id_mede = ide_medecin.mede_id_mede as actmed
     
    join ide_sejour on sad_activite_saisies.acsa_id_sejo = ide_sejour.sejo_id_sejo as sejour
    join bas_catalogue_pers on ide_sejour.Sejo_id_cape_ven = bas_catalogue_pers.cape_id_cape as cape
     
    join bas_etablissement on ide_sejour.sejo_id_etab_con = bas_etablissement.etab_id_etab as etab
     
     
    where etab.etab_lib_etb = 'Mon_etablissement'
    and activite.ACSA_DAT_EXE_DEB between '01/01/2019' and '30/06/2019'
    and cape.cape_code IN ('H','A')
    En retirant les alias ça fonctionne correctement, mais je dois faire appel deux fois à une même table pour faire une autre jointure et appeler d'autres champs.


    Pourriez-vous m'aider?

    Je vous remercie.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 778
    Points
    30 778
    Par défaut
    Deux types d'erreur de syntaxedans cette requête
    1. Code : Sélectionner tout - Visualiser dans une fenêtre à part
      from sad_activite_saisies as activite
      Le mot-clé as pour introduire l'alias d'une table est facultatif dans la norme du langage SQL mais interdit dans la syntaxe Oracle.
    2. Code : Sélectionner tout - Visualiser dans une fenêtre à part
      join ide_medecin on sad_activite_saisies.acsa_id_mede = ide_medecin.mede_id_mede as actmed
      L'alias d'une table doit être défini juste après le nom de table.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juin 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    D'accord pour le mot clé AS je l'ai supprimé (faut connaître )

    En revanche si je comprends bien pour le deuxième type d'erreur, au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    join ide_medecin on sad_activite_saisies.acsa_id_mede = ide_medecin.mede_id_mede as actmed
    Je suis supposé écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    join ide_medecin  actmed on sad_activite_saisies.acsa_id_mede = ide_medecin.mede_id_mede
    Sommes-nous d'accord?

  4. #4
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juin 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    Pour ceux qui rencontreraient le problème, il faut également penser qu'il faut utiliser les alias dans l'écriture de la jointure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    from sad_activite_saisies acsa
    join ide_medecin mede1 on acsa.acsa_id_mede = mede1.mede_id_mede

    Un grand merci à al1_24!

    Je ne pensais pas qu'il faille utiliser une norme Oracle dans le logiciel utilisé... Il y avait certes de gros indices... mais bon.

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

Discussions similaires

  1. la commande sql ne se termine pas correctement
    Par watiero dans le forum SQL
    Réponses: 5
    Dernier message: 01/10/2007, 11h19
  2. la commande sql ne se termine pas correctement
    Par watiero dans le forum Sql*Plus
    Réponses: 11
    Dernier message: 28/09/2007, 23h17
  3. Réponses: 4
    Dernier message: 10/09/2007, 20h54
  4. Réponses: 5
    Dernier message: 21/08/2007, 14h47
  5. ORA-00933 la commande SQL ne se termine pas correctement
    Par habasque dans le forum Sql*Plus
    Réponses: 1
    Dernier message: 09/12/2006, 15h41

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