【发布时间】:2020-03-13 22:51:29
【问题描述】:
我正在尝试使用 Linq 编写我的 SQL 语句,但我不太明白。我知道有很多熟悉的帖子,但也许你可以帮助我了解我的帖子并帮助我了解它是如何工作的。
我的 SQL 查询:
SELECT DISTINCT(cou.Country1) AS Laender, COUNT(cou.Country1) AS Anzahl FROM SEC_User be
INNER JOIN PAR_Company com ON com.CompanyID = be.CompanyID
INNER JOIN DAT_Country cou ON cou.CountryID = com.CountryID
Group by cou.Country1
我认为我的开始可能是正确的:
var query = from user in db.SEC_User
join com in db.PAR_Company on user.CompanyID equals com.CompanyID
join cou in db.DAT_Country on com.CountryID equals cou.CountryID
提前致谢!
【问题讨论】:
-
DISTINCT不是一个函数,它是SELECT DISTINCT的一部分,适用于整个选定的行。跳过那些额外的括号并简单地写SELECT DISTINCT cou.Country1 AS Laender, ...以使代码更清晰。然而…… -
...(续)当您执行
GROUP BY,时,您很少不需要执行SELECT DISTINCT,因为GROUP BY本身不会返回重复行。简单地做一个简单的SELECT!
标签: c# sql entity-framework linq linq-to-entities