我有一个查询,我知道如何在SQL中做,但很难弄清楚LINQ查询。这是SQL。
SELECT ordNo, tranNo, COUNT(distinct custNo)
FROM orders
GROUP BY ordNo, tranNo
HAVING COUNT(distinct custNo) > 1
我觉得这不是我看到你标记为副本的同一个问题。链接的问题仅限于单个属性。我已经忘记了我尝试过的Linq查询,但这里有一个。
var countList = from o in orders
group o by new {o.orderNo, o.tranNo, o.custNo}
into grp
where grp.Key.custNo.Distinct().Count() > 1
select grp;
我尝试了下面的建议,但有人评论说你无法访问custNo属性。
答案 0 :(得分:0)
因为我不知道表结构,所以只是spitballing。
context.orders
.GroupBy(o => new { o.ordNo, o.tranNo, o.custNo })
.Where(o => o.custNo.Distinct().Count() > 1)
.Select(o => new {
ordNo = o.ordNo,
tranNo = o.tranNo
});