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 :

[debutant]problematique entre trois tables


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 74
    Par défaut [debutant]problematique entre trois tables
    Bonjour,

    Voilà, je vous expose mon probleme :

    J'ai trois tables, en fait plus mais je vais limiter a trois, dans mon cas on a par exemple :

    Table A
    A_ID
    B_ID
    A_C1

    Table B
    B_ID
    C_ID
    B_C1

    Table C
    C_ID
    C_C1

    Je veut faire une recherche sur la table A, mais je n'ai comme information que l'id de la table C,

    Je voudrais savoir si en faisant ainsi ce serait correct :

    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=C.C_ID and C.C_ID=1

    Est ce que je vais bien avoir toute les valeurs de A en avec une limite a C??

    Et si je fais :

    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=C.C_ID and C.C_ID=1 and B.B_ID=1

    Est ce que j'aurais bien que les valeurs de A dont B.B_ID=1 et non les valeurs A avec un B.B_ID différent de 1 mais un C.C_ID=1?

    Je testerais bien directement sur la base au lieu de vous embeter avec ma question, mais malheureusement quelque probleme technique m'y empeche !!!

    Merci de vos réponses ...

  2. #2
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 70
    Par défaut De l'aide
    Bonjour,
    Pour la syntaxe :
    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=C.C_ID and C.C_ID=1

    du moment où il n'y a qu'un seul C_ID=1 et tu te limite au C_ID, tu peux te limiter à :
    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=1

    et tu auras tous les A de C_ID = 1

    /**************************************************************/
    Pour la syntaxe :
    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=C.C_ID and C.C_ID=1 and B.B_ID=1

    Si tu cherches les B_ID=1 et C_ID=1, c'est bon et tu peux la réduire à :
    Select A.* from A A, B B, C C where A.B_ID=B.B_ID and B.C_ID=1 and B.B_ID=1

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 74
    Par défaut
    Merci beaucoup, c'est vrai que ca simplifie comme cela !!!

Discussions similaires

  1. comparaison d'indentifiant entre trois tables
    Par MrJack14 dans le forum Requêtes
    Réponses: 14
    Dernier message: 15/01/2010, 16h51
  2. [AC-2003] Requête entre trois table
    Par Zoulficar dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 26/11/2009, 19h32
  3. Probléme de relation entre trois tables
    Par Myogtha dans le forum Modélisation
    Réponses: 18
    Dernier message: 06/05/2008, 13h32
  4. [Conception]Lien plusieurs à plusieurs entre trois table
    Par egg3774 dans le forum Modélisation
    Réponses: 5
    Dernier message: 20/04/2007, 17h44
  5. requete entre trois tables
    Par fpouget dans le forum Langage SQL
    Réponses: 8
    Dernier message: 08/03/2005, 21h44

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