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

Requêtes MySQL Discussion :

Requête avec une jointure multitables


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Requête avec une jointure multitables
    Bonjour, voilà bien une heure que je gratte sur une requête, mais je n'arrive malheureusement pas à la réaliser.

    Voici un schema des tables concernées :
    CLIENT(num_client,nom_client,.....)
    PROJET(num_projet, date_projet, client_projet,...)
    FORFAIT(num_forfait, date_forfait, client_forfait,....)

    et je souhaite avoir un tableau sur 5 colones : client, num_projet,date_projet, num_forfait, date_forfait, listant un projet OU un forfait par ligne.

    pour le moment j'ai essayé ça (ce qui vous l'aurez deviné ne fonctionne pas ):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT DISTINCT client.num_client, num_projet, date_projet,num_forfait, date_forfait
    FROM client AS client1
    LEFT JOIN projet ON num_client = client_projet, client
    LEFT JOIN forfait ON num_client = client_forfait
    j'obtiens bien des lignes avec uniquement des forfait et uniquement des projets, le reste étant remplis par des null, mais des lignes apparaissant avec les deux, et j'aimerais donc les éviter.

    Merci d'avance pour votre aide

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 039
    Points : 23 787
    Points
    23 787
    Par défaut
    Bonjour,

    Quel est l'intérêt d'avoir 5 colonnes si c'est pour avoir forcément 2 colonnes à NULL systématiquement ?
    Ne vaut-il pas mieux 4 colonnes, dont une qui indique si il s'agit d'un projet ou d'un forfait (en passant par la clause UNION) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT c.num_client AS client, p.num_projet AS id_activite, p.date_projet AS date_activite, 'Projet' AS activite
    FROM client c
    INNER JOIN projet p ON c.num_client = p.client_projet
    UNION
    SELECT c.num_client, f.num_forfait, f.date_forfait, 'Forfait'
    FROM client c
    INNER JOIN forfait f ON c.num_client = f.client_forfait
    ced

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Super, c'est exactement ce que je voulais, je n'avais pas pensé à le faire de cette façon, merci beaucoup

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

Discussions similaires

  1. requête avec une jointure
    Par ledisciple dans le forum Requêtes
    Réponses: 5
    Dernier message: 25/03/2013, 12h13
  2. Requête possible avec une jointure ?
    Par Djakisback dans le forum Langage SQL
    Réponses: 4
    Dernier message: 17/11/2011, 13h55
  3. [doctrine] Requête avec une jointure
    Par benhsaien dans le forum ORM
    Réponses: 4
    Dernier message: 28/03/2011, 15h14
  4. une requête avec deux jointures
    Par rinuom99 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 18/12/2009, 20h11
  5. Une requête avec des jointures externes
    Par Sopra dans le forum Langage SQL
    Réponses: 4
    Dernier message: 30/07/2009, 17h28

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