//内连 from a in TableA join b in TableB on a.Id equals b.Id select new { aName=a.aName, bName=u.bName} //左连 from a in TableA join b in TableB on a.Id equals b.Id into Grp from grp in Grp.DefaultIfEmpty() select new { aName=a.aName, bName=(grp==null)?"":grp.bName} //右连 from a in TableA join b in TableB on a.Id equals b.Id into Grp from grp in Grp.DefaultIfEmpty() select new { aName=(grp==null)?"":grp.aName,bName=b.bName}