0
votes

SQL avec un à plusieurs relations (trois tables)

J'ai la structure de tables suivante:

Entrez la description de l'image ici

Et j'aimerais avoir une requête où je reçois tous les articles de la table T1 utilisé dans les tableaux associés, affichant tous les champs des tables associés ( liked_table_a et liked_table_b ).

Notez que les champs d'A et B sont différents.

Merci pour l'aide!


4 commentaires

La plupart des gens ici veulent des données d'échantillons de table - et des résultats attendus - comme texte formaté, pas en tant qu'amicales (ni liens vers des images.)


Avez-vous essayé quelque chose ??


Et quelle partie de rejoindre interne ne comprenez-vous pas?


Désolé, la prochaine fois que je vais utiliser du texte à la place!


3 Réponses :


0
votes

Non testé, mais cela devrait faire ce que vous voulez. Remplissez les champs manquants dans la sélection:

Select
    t1.ID_WF,
    rtA.ID_Table_A,
    rtB.ID_table_B
    [ ... ]
From
    T1 t1
    full outer join Related_Table_A rtA on (t1.ID_WF = rtA.ID_WF)
    full outer join Related_Table_B rtB on (t1.ID_WF = rtB.ID_WF)
Where
    rtA.ID_Table_A IS NOT NULL
    or
    rtB.ID_Table_B IS NOT NULL


0 commentaires

0
votes
SELECT T1.ID_WF AS T1_ID_WF, Related_Table_A.ID_WF AS Related_Table_A_ID_WF, 
Related_Table_A.Table_A_Field1, Related_Table_B.ID_WF AS Related_Table_B_ID_WF, 
Related_Table_B.Table_B_Field1, Related_Table_B.ID_Table_B, 
Related_Table_A.ID_Table_A
FROM (T1 INNER JOIN Related_Table_B ON T1.[ID_WF] = Related_Table_B.[ID_WF]) 
INNER JOIN Related_Table_A ON T1.[ID_WF] = Related_Table_A.[ID_WF];

1 commentaires

Essayez cette requête: Sélectionnez T1.ID_WF, like_table_a.id_wf, associé_tabl_a.table_a_field1, like_table_b.id_wf, liable_b.ide_b_field_b.dable_b_field_b.able_b_field_b.table_b_field_b.id_table_b_a à partir de t1 joint inner liés_table_b sur t1.id_wf = like_dable_b.id_wf .Id_wf = liked_table_a.id_wf;



0
votes

Essayez ceci. xxx


2 commentaires

Bonjour, merci pour la réponse, mais j'ai eu une erreur de synthax: (j'ai mis à jour les noms pour la lecture plus facile) Sélectionnez T1.ID_WF, T1.T1_FIELD1, T1.T1_FIELD2, TA.DABLE_A_FIELD1, TA.table_A_Field2, TA. Table_a_field3 de t1 a laissé rejoindre ta sur t1.id_wf = ta.id_wf a laissé rejoindre la tuberculose sur t1.id_wf = ta.id_wf;


Rejoindre gauche Ta sur t1.id_wf = ta.id_wf a laissé rejoindre la te sur t1.id_wf = tb.id_wf;