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 :

requête : même Table utulisée plusieurs fois


Sujet :

Langage SQL

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 22
    Points : 20
    Points
    20
    Par défaut requête : même Table utulisée plusieurs fois
    bonjour, dans ma base, j'ai une action qui est reliée à une personne qui la réalise et à une autre personne qui la suit, ce sont des relations 1:n à chaque fois :
    Une action a une seule personne qui la suit
    Une action a une seule personne qui la realise
    Une personne peut suivre ou realiser plusieurs actions
    Si je veux lister les actions, comment je fais pour avoir dans une seule requete l'id de l'action plus l'id
    de la personne qui realise et celui de celle qui suit
    Merci d'avance.

  2. #2
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    merci de jeter un oeil aux Conseils à lire avant de poster, ce serait sympa de préciser ton SGBD et de détailler un peu ton schéma

    une requête du type suivant devrait te convenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Reference, Sui.Nom, Rea.Nom
      FROM Action, Personne Sui, Personne Rea
     WHERE id_PerSui = Sui.Cle
       AND id_PerRea = Rea.Cle
    Sui et Rea sont des alias, car la table personne est sollicitée 2 fois dans cette requête, pour 2 infos différentes, et c'est le moyen de les distinguer.

    Reference, id_PerSui et id_PerRea sont des champs de la table Action.
    (tu comprends pourquoi préciser un minimum d'infos sur son schéma est utile : ça t'aurait évité de "retranscrire" ma requête)

    Mes jointures ne sont pas normalisées, je bosse sous Oracle 8 et je n'ai pas l'habitude des JOIN, désolé.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 22
    Points : 20
    Points
    20
    Par défaut
    merci, je suis pas un grand fan des JOIN moi non plus.

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

Discussions similaires

  1. [PHP 5.3] Affichage du résultat d'une requête multi-table sur plusieurs pages
    Par leaston dans le forum Langage
    Réponses: 2
    Dernier message: 20/08/2011, 16h19
  2. Exécuter une requête SQL lourde en plusieurs fois
    Par diabli73 dans le forum Général Java
    Réponses: 5
    Dernier message: 10/06/2010, 18h13
  3. Réponses: 3
    Dernier message: 14/05/2010, 21h24
  4. Requête: Afficher un champ plusieurs fois
    Par shirya dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 06/06/2008, 18h10
  5. Plusieurs Champs d'une même table dans plusieurs textebox
    Par cyberbiker dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 13/09/2006, 11h32

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