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 :

requete SELECT sur 3 tables


Sujet :

Langage SQL

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Points : 338
    Points
    338
    Par défaut requete SELECT sur 3 tables
    bonjour,

    je n'arrive pas a visualiser la maniere don je pourrais etablir ma requete SELECT

    j'ai 3 tables

    une table "utilisateurs" qui posséde Num_Utilisateur, Login, Password
    une table "etudiants" qui posséde Num_Etudiant, Nom, Prenom
    une table "professeurs" qui posséde Num_Professeur, Nom, Prenom

    vous l'aurez compris etudiants et professeurs sont 2 tables specialisations de "utilisateurs"

    je voudrais obtenir la liste des personnes avec donc

    Num_Utilisateur, Login, Nom, Prenom

    en sachant que la relation est Num_Utilisateur = Num_Etudiant OU Num_Utilisateur = Num_Professeur


    je travail sous un serveur MySQL 6

    merci de 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 034
    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 034
    Points : 23 779
    Points
    23 779
    Par défaut
    Bonjour,

    Par exemple, ça peut être fait en faisant deux requêtes jointes par un UNION ALL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT Num_Utilisateur, Login, Nom, Prenom, 'Etudiant' AS specialisation
    FROM utilisateurs u
    INNER JOIN etudiants e on u.Num_Utilisateur = e.Num_Etudiant
    UNION ALL
    SELECT Num_Utilisateur, Login, Nom, Prenom, 'Professeur' AS specialisation
    FROM utilisateurs u
    INNER JOIN professeurs p on u.Num_Utilisateur = p.Num_Professeur
    Le fait d'ajouter une colonne "specialisation" permet alors de distinguer la spécialité de chaque utilisateur, si besoin.

    ced

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Points : 338
    Points
    338
    Par défaut
    si je comprend bien il va effectuer 2 requete SELECT avec les meme colonnes et ensuite il les met a la suite pour fair une seul table??


    sa colle a mon problème merci mais pour info


    cela fonctionne t-il si il n'y a pas le meme nombre de colonne??

    et si le nom des colonne est different??

  4. #4
    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 034
    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 034
    Points : 23 779
    Points
    23 779
    Par défaut
    Il faut qu'il y ait le même nombre de colonnes dans les deux requêtes et que les colonnes au même emplacement soient de même type.

    ced

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

Discussions similaires

  1. Requete select sur 2 tables => doublons
    Par Lamanne dans le forum Requêtes
    Réponses: 8
    Dernier message: 22/01/2009, 22h53
  2. Requete select sur plusieurs tables
    Par cl@ndestIno dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/12/2008, 12h36
  3. Requete mysql : select sur deux tables
    Par IP-Fix dans le forum Requêtes
    Réponses: 9
    Dernier message: 12/11/2008, 16h03
  4. Requete select sur 2 tables
    Par beho dans le forum Requêtes
    Réponses: 3
    Dernier message: 13/02/2007, 15h19
  5. Requete SELECT SUR +sieurs tables
    Par yanis97 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 21/09/2006, 13h30

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