Sql Linq中的访问查询
我有一个复杂的access sql查询要在linq中转换 我就是这么做的:Sql Linq中的访问查询,sql,linq,ms-access,Sql,Linq,Ms Access,我有一个复杂的access sql查询要在linq中转换 我就是这么做的: var query = from p in tbl_multiIntervenants.AsEnumerable() join q in ( from s in tbl_contrats.AsEnumerable()
var query = from p in tbl_multiIntervenants.AsEnumerable()
join q in
(
from s in tbl_contrats.AsEnumerable()
join t in
(
from u in tbl_traitement_gapp.AsEnumerable()
join v in tbl_TP.AsEnumerable()
on u.Field<string>("Identifiant tâche") equals v.Field<string>("Identifiant tâche") into joined
from jointe in joined.DefaultIfEmpty()
select jointe
)
)
以下是sql查询的简化步骤:
SELECT Tbl_TP.Société, Tbl_CONTRATS.Appartenance
FROM Tbl_Multi_Intervenants
INNER JOIN (Tbl_CONTRATS
INNER JOIN (Tbl_TP LEFT JOIN Tbl_Traitement_GAPP ON Tbl_TP.Identifiant tâche] = Tbl_Traitement_GAPP.[Identifiant tâche])
ON Tbl_CONTRATS.Emplacement = Tbl_TP.[N° Site])
ON Tbl_Multi_Intervenants.[Identifiant tâche] = Tbl_TP.[Identifiant tâche]
WHERE (((Tbl_Traitement_GAPP.[Identifiant tâche]) Is Null))
SELECT Tbl_TP.Société, Tbl_CONTRATS.Appartenance
FROM Tbl_Multi_Intervenants
INNER JOIN (Tbl_CONTRATS
INNER JOIN (Tbl_TP LEFT JOIN Tbl_Traitement_GAPP ON Tbl_TP.Identifiant tâche] = Tbl_Traitement_GAPP.[Identifiant tâche])
ON Tbl_CONTRATS.Emplacement = Tbl_TP.[N° Site])
ON Tbl_Multi_Intervenants.[Identifiant tâche] = Tbl_TP.[Identifiant tâche]
WHERE (((Tbl_Traitement_GAPP.[Identifiant tâche]) Is Null))