小编典典

LINQ to Entity,在NOT IN表上联接

sql

我的脑子现在好像很糊涂!我正在使用LINQ to Entity,并且我需要从一个表中获取一些数据,而该数据在另一表中不存在。

例如:我需要表A中的groupID,groupname和groupnumber,它们在表B中不存在。groupID将与其他相关信息一起存在于表B中。这些表没有任何关系。在SQL中,它非常简单(有一个更优雅,更有效的解决方案,但我想画一幅所需的图片)

SELECT
   GroupID,
   GroupName,
   GroupNumber,
FROM
   TableA
WHERE
   GroupID NOT IN (SELECT GroupID FROM TableB)

是否有使用Entity Framework / LINQ to Entity的简便/优雅方法?现在,我有很多查询进入数据库,然后进行比较,等等。这非常混乱。


阅读 180

收藏
2021-04-22

共1个答案

小编典典

您可以使用任何

  var temp =context.TableA
         .Where(x=>!context.TableB.Any(y=>y.GroupID!=x.GroupID))
         .Select(x=>new { GroupID = x.GroupID, GroupName=x.GroupName, GroupNumber = x.GroupNumber}).ToList();
2021-04-22