Linq到SQL - 分组依据和计数 [英] Linq to SQL - Group By and Count

查看:241
本文介绍了Linq到SQL - 分组依据和计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试转换此查询(已经工作)

  SELECT Building.NAME,COUNT([User]。 ID)
FROM BuildingUser
INNER JOIN Building ON Building.ID = BuildingUser.ID_BUILDING
INNER JOIN [User] ON [User] .ID = BuildingUser.ID_USER
GROUP BY Building。 NAME

到Linq到SQL,但我不知道我做错了什么。看看我的尝试

 从db.GetTable< BuildingUser>()中的buildinguser 
在db.GetTable中联接构建<构建>()
在buildinguser.ID_BUILDING等于building.ID
在db.GetTable中< User>()中的用户
在buildinguser.ID_USER上等于user.ID
组构建building.name into grpBuilding
select new
{
building = grpBuilding.Key,
users =
};

我只需要分组我的建筑物,并计算每个人有多少用户。

$只需使用计数方法即可:


$ b

$ b

 来自在db.GetTable< BuildingUser>()中的buildinguser 
在db.GetTable< Building>()中联接构建buildingus.ID_BUILDING上的
等于building .ID
在db.GetTable中加入用户< User>()
在buildinguser.ID_USER上等于user.ID
通过building.NAME将组构建为grpBuilding
select new
{
building = grpBuilding.Key,
users = grpBuilding.Count()
};


I'm trying to convert this query (already working)

SELECT Building.NAME, COUNT([User].ID)
FROM BuildingUser
INNER JOIN Building ON Building.ID = BuildingUser.ID_BUILDING
INNER JOIN [User] ON [User].ID = BuildingUser.ID_USER
GROUP BY Building.NAME

To Linq to SQL, but I don't know what I'm doing wrong. Look at my trying

from buildinguser in db.GetTable<BuildingUser>()
join building in db.GetTable<Building>()
on buildinguser.ID_BUILDING equals building.ID
join user in db.GetTable<User>()
on buildinguser.ID_USER equals user.ID
group building by building.NAME into grpBuilding
select new
{
    building = grpBuilding.Key,
    users = 
};

I just need to group my Buildings and count how many users each one has.

解决方案

Simply use the the Count method:

from buildinguser in db.GetTable<BuildingUser>()
join building in db.GetTable<Building>()
on buildinguser.ID_BUILDING equals building.ID
join user in db.GetTable<User>()
on buildinguser.ID_USER equals user.ID
group building by building.NAME into grpBuilding
select new
{
    building = grpBuilding.Key,
    users = grpBuilding.Count()
};

这篇关于Linq到SQL - 分组依据和计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆