非常に単純なSQLクエリがあります。
SELECT r.SpaceID, Count (*), SpaceCode
FROM Rider r JOIN Spaces s
ON r.SpaceID = s.SpaceID
GROUP BY r.SpaceID, s.SpaceCode
Group by句は複数のテーブルにあり、LINQでも同じことをしたいので、単一のテーブルをグループ化する方法は知っていますが、複数のテーブルについてはわかりません。
複数のテーブルをグループ化するには、次のようにします。
group new { r,s } by new { r.SpaceID, s.SpaceCode }
これは役立つかもしれません:
(
from r in db.Rider
join s in db.Spaces
on r.SpaceID equals s.SpaceID
group new { r,s } by new { r.SpaceID, s.SpaceCode }
into grp
select new
{
Count=grp.Count(),
grp.Key.SpaceID,
grp.Key.SpaceCode
}
)
Dbはデータベースコンテキストです