【发布时间】:2017-06-20 16:14:26
【问题描述】:
我有以下 SQL 查询,它为我提供月、年和计数。如何在 LINQ 查询语法中进行等效操作?
SQL
SELECT
MONTH(ExpiryDate) MONTH,
YEAR(ExpiryDate) YEAR,
COUNT(*) COUNT
FROM tblItems
GROUP BY
YEAR(ExpiryDate),
MONTH(ExpiryDate)
提前致谢
[更新工作答案]
var query = from a in db.tblItems
group a by new
{
((DateTime)a.ExpiryDate).Year,
((DateTime)a.ExpiryDate).Month
} into bca
select new
{
MonthField = bca.Key.Month,
YearField = bca.Key.Year,
CountField = bca.Count(),
};
【问题讨论】:
-
LINQ 太宽泛了。请提供更多上下文 - LINQ to SQL、LINQ to Entities(EF、EF Core、哪个版本)等。