1

我有一个包含多个成员的工会列表和另一个包含工会页面点击量的表格。需要一份列出每个工会、每种类型成员的数量和点击次数(页面浏览量)的报告。

点击在带有日期和 unionID 的单独表格上

这很接近,但并没有真正得到我想要的结果。计数显示成员总数,但不显示点击总数。我如何获得总点击次数?(计算 clicks 表中匹配 UnionID 的记录)

(from c in db.view_Members_Details
 join h in db.tbl_Clicks on c.unionID equals h.unionID 
 group c by new { c.UnionName, h.unionID } into g
 select new
 {
     TotalClicks = g.Count(),
     UnionName = g.Key.UnionName,
     userTypeID1 = g.Where(x => x.UnionName.Equals(g.Key.UnionName) && x.userTypeID.Equals(1)).Count(),
     userTypeID2= g.Where(x => x.UnionName.Equals(g.Key.UnionName) && x.userTypeID.Equals(2)).Count(),
     userTypeID3= g.Where(x => x.UnionName.Equals(g.Key.UnionName) && x.userTypeID.Equals(3)).Count(),
 }).ToList();

结果应该是:

Clicks Count |  Union Name | userTypeID1 Count  | userTypeID2 Count  | userTypeID3 Count |
4

1 回答 1

0

我认为您不需要 WHERE 中的第一个条件,因为您已经在UnionName.

g.Count(x => x.userTypeID == 3) //etc for 1, 2, 3

至于点击次数,请尝试以下操作:

TotalClicks = g.Count(x => x.unionID == g.Key.unionID)
于 2011-09-09T20:14:43.760 回答