如何在 linq 或 lambda 表达式中使用具有 ,分组依据和不同

本文关键字:linq lambda 表达式 | 更新日期: 2023-09-27 18:37:11

>我需要将下面的查询转换为linqlambda表达式

 SELECT count(Hid.HouseholdID) FROM
 (SELECT HouseholdID FROM tblTmpJoinAll 
 WHERE loyal = 1 Group By HouseholdId 
 HAVING Count(distinct BasketID)>1) as Hid;

到目前为止我已经尝试过

lst.Where(f => f.Flybuys == true)
.GroupBy(h=>h.HouseholdID)
//.Where(x=>x.)// don't know what to right here
.Select(h => h.Key).Count();

如何在 linq 或 lambda 表达式中使用具有 ,分组依据和不同

我认为这段代码有效。

lst.Where(f => f.Flybuys) // you don't need == true here
   .GroupBy(f => f.HouseholdID)
   .Where(f => f.GroupBy(i => i.BasketID).Count() > 1)
   .Count();