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 :

Jointure sur trois tables [Débutant(e)]


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 85
    Par défaut Jointure sur trois tables
    Bonjour,

    je souhaite faire l'extraction d'une table en filtrant ces données a partir de 2 autres tables

    je m'explique:

    j'ai 3 tables, je souhaite faire apparaitre les données de la table cde en filtrant à partir des tables client et compte.

    faire apparaitre uniquement les commandes de 2013 dont le type est c1 et la ville est paris

    table cde
    commande client compte date
    12 martin A 01/13
    2 henri B 12/12
    4 simon C 02/13

    table client
    client compte type
    martin A c1
    henri B c1
    simon C c2

    table compte
    compte ville
    A paris
    B nantes
    C lyon
    A nantes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select cde.commande,cde.client,cde.compte,cde.date,client.type,compte.ville from cde, client, compte 
    join cde.client = client.client, cde.compte = client.compte
    join cde.compte = compte.compte
     
    where commande.date>='01/13' and client.type='c1' and compte.ville='paris';
    Ca ne marche pas! Pouvez-vous me venir en aide?

    D'avance merci!

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 953
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 953
    Par défaut
    Révisez vos jointures et notamment la syntaxe normalisée

  3. #3
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    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 134
    Par défaut
    Citation Envoyé par jobar38 Voir le message
    Ca ne marche pas!
    Un peu court comme explication
    Il y a un message d'erreur ?
    Le résultat n'est pas conforme à tes attentes ?
    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.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 85
    Par défaut
    j'ai modifié le script et voilà le message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT cde.commande,cde.client,cde.compte,cde.date,client.type,compte.ville FROM cde
    JOIN client ON cde.client = client.client, cde.compte = client.compte
    JOIN compte ON cde.compte = compte.compte
     
    WHERE commande.date>='01/13' AND client.type='c1' AND compte.ville='paris';
    Error at Command Line:3 Column:108
    Error report:
    SQL Error: ORA-00933: SQL command not properly ended
    00933. 00000 - "SQL command not properly ended"
    *Cause:
    *Action:

  5. #5
    Membre Expert
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Par défaut
    Citation Envoyé par jobar38 Voir le message
    j'ai modifié le script et voilà le message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT cde.commande,cde.client,cde.compte,cde.date,client.type,compte.ville FROM cde
    JOIN client ON cde.client = client.client, cde.compte = client.compte
    JOIN compte ON cde.compte = compte.compte
     
    WHERE commande.date>='01/13' AND client.type='c1' AND compte.ville='paris';
    Error at Command Line:3 Column:108
    Error report:
    SQL Error: ORA-00933: SQL command not properly ended
    00933. 00000 - "SQL command not properly ended"
    *Cause:
    *Action:
    La condition de 1ère jointure : remplacer la virgule par un AND

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 85
    Par défaut
    J'ai maintenant une autre erreur

    Error at Command Line:5 Column:31
    Error report:
    SQL Error: ORA-00905: missing keyword
    00905. 00000 - "missing keyword"
    *Cause:
    *Action:

  7. #7
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Peut-être un problème au niveau du filtre sur la date. Essaye avec :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE commande.date >= '01/01/13'
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

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

Discussions similaires

  1. Requete SQL avec jointure sur trois tables
    Par pit2121 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/05/2008, 23h07
  2. Requête SQL avec jointure sur trois tables
    Par pit2121 dans le forum SQL
    Réponses: 0
    Dernier message: 19/05/2008, 20h24
  3. Jointure sur trois tables
    Par user126 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 28/02/2008, 17h07
  4. [SQL Server 8] Discussion : Full Jointure sur trois tables
    Par Baquardie dans le forum Langage SQL
    Réponses: 5
    Dernier message: 22/12/2006, 14h01
  5. jointure sur TROIS tables
    Par caribou_belle dans le forum Langage SQL
    Réponses: 8
    Dernier message: 01/03/2004, 11h20

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