Bonjour,
Je rencontre un gros soucis, sur lequel je bloque depuis quelques heures ..
J'ai un dataset qui comporte 4 tables. J'ai une table principale qui comporte des éléments (dont une clé primaire) et 3 tables annexes. Les 3 tables sont indépendantes mais comportent des caractéristiques par rapport à la clé primaire de la table principale.
J'aimerais faire une requête qui récupére tous les enregistrements où
table1.cléprimaire = table2.ID && ( || ?)
table1.cléprimaire = table3.ID && ( || ?)
table1.cléprimaire = table4.ID && ( || ?)
J'ai tenté cette requête :
Cependant cela me retourne 0 enregistrement. Par contre si je laisse seulement une seule jointure entre A et B, ca fonctionne .. c'est la jointure multiple qui fonctionne pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 var requete = from A in table1.AsEnumerable() //from C in table3.AsEnumerable() join B in table2.AsEnumerable() on A["TPLNR"] equals B["TPLNR"] join C in table3.AsEnumerable() on A["TPLNR"] equals C["TPLNR"] //where A["TPLNR"] == B["TPLNR"] || A["TPLNR"] == C["TPLNR"] join D in table4.AsEnumerable() on A["TPLNR"] equals D["TPLNR"] select new { BEBER = A.Field<string>("BEBER"), EVENT = A.Field<string>("EVENT"), UNIT_FROM = B.Field<string>("UNIT_FROM"), VALUE_FROM = C.Field<string>("VALUE_FROM") };
En sql je sais faire, mais j'ai du mal à traduire :/ J'ai regardé beaucoup de tuto, mais souvent pas de join multiple, ou alors leur solution ne fonctionne pas chez moi, je dois louper une étape ..
Merci !
Partager