我有一对多的外键相关表,我想知道如何在实体框架LINQ查询中创建以下SQL Server查询,以仅查找具有子记录的父记录?
SELECT p.ParentId ,p.ParentName
FROM Parent p JOIN Child c on p.ParentId = c.ParentId
GROUP BY p.ParentId, p.ParentName
HAVING COUNT(c.ParentId) > 0
答案 0 :(得分:3)
内部联接已将结果集限制为父级和子级都存在的行,因此类似下面的内容应该有效:
var parentsWithChildren = (
from parent in Parent
join child in Child on parent.ParentId equals child.ParentId
select new { parent.ParentId, parent.ParentName } ).Distinct();