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

Bases de données Delphi Discussion :

[D2005 - Access-Sql] Comment imbriquer 4 tbles en 1 requête?


Sujet :

Bases de données Delphi

  1. #1
    Membre averti
    Avatar de Hauwke
    Inscrit en
    Septembre 2005
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 329
    Points : 400
    Points
    400
    Par défaut [D2005 - Access-Sql] Comment imbriquer 4 tbles en 1 requête?
    Bonjour,
    Quelqu'un peut-il me montrer un bout de code d'une requête imbriquée sur plus de trois tables (j'en ai 18 en tout) à l'aide d'une interrogation sql qui attaque une BDD Access 2000?
    il s'agit de remplir un TTreeview avec un champ de chaque table et de remplir des grilles avec les autres champs du résultat, mon probléme actuel étant la lenteur du processus sur de grosses tables.
    D'avance merci
    Cordialement,
    Hauwke
    PS:J'ai été faire un tour su Sqlpro mais j'ai rien compris!
    Si vous avez un exemple qui attaque plus de 4 tables et plusieurs BDD je suis encore plus interressé par la chose

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Soit 4 tables : T1,T2,T3,T4
    Qui ont les champs suivants :

    T1 : C1,C2,C3
    T2 : C1,C4,C5
    T3 : C4,C6
    T4 : C6,C7

    T1 = table principale
    T2 = table cliente
    T3 = table listing (en clair une table ou il y a la désignation d'un champ, genre une table avec la liste des pays, C4 = un numéro de pays et C6 sa désignation)
    T4 = table listing (idem que plus haut)

    On veut afficher C2,C3,C5,C7

    On remarque que :

    - T1 et T2 ont le meme champs C1
    - T2 et T3 ont le meme champs C4
    - T3 et T4 ont le meme champs C6


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Select T1.C2,T1.C3,T2.C5,T4.C7 from 
    T1 inner join 
      (T2 inner join 
        (T3 inner join T4 on T3.C6=T4.C6) // 3 em jointure entre T3 et T4 sur le champs C6
      on T2.C4=T3.C4) // deuxieme jointure entre T2 et T3 sur le champs C4
    on T1.C1=T2.C1 // premiere jointure entre T1 et T2 sur le champs C1
    voila en gros une requete avec jointure sur 4 tables, a toi d'adapter a ce que tu souhaites faire.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  3. #3
    Membre averti
    Avatar de Hauwke
    Inscrit en
    Septembre 2005
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 329
    Points : 400
    Points
    400
    Par défaut
    Bonjour,
    Merci à toi Malatar pour ce bout de code. Je ne partais pas du tout dans le bon sens! J'avais commencé par faire mes jointures dans l'ordre logique T1, T2; T2, T3; T3, T4 et forcément ça ne marchait aps du tout! A la lumière de ton code, je commence à comprendre mon erreur de logique
    Encore merci
    Cordialement
    Hauwke
    PS: je mets le tag résolu

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/09/2011, 14h40
  2. [AC-2007] Comment imbriquer des requêtes SQL en VBA
    Par rch05 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 09/03/2011, 21h18
  3. Réponses: 1
    Dernier message: 10/09/2009, 14h21
  4. [Access] comment imbriquer ces 2 requetes
    Par dietrich dans le forum Langage SQL
    Réponses: 1
    Dernier message: 31/01/2007, 12h10
  5. Réponses: 23
    Dernier message: 19/09/2006, 11h33

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