Vis*_*hal 6 c# t-sql linq linq-to-entities comparable
我想得到每个月的计数,但即使有多次出现,计数也应该每天最多只有一次.我有正确的SQL查询,但无法将其转换为LINQ -
select
count(DISTINCT DAY(date)) as Monthly_Count,
MONTH(date) as Month,
YEAR(date)
from
activity
where
id=@id
group by
YEAR(date),
MONTH(date)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我翻译上面的查询到LINQ.谢谢!
每使用GROUP BY和COUNT(DISTINCT)的LINQ to SQL通过@Rick给出的,这应该工作:
var query = from act in db.Activity
where act.Id == id
group act by new { act.Date.Year, act.Date.Month } into g
select new
{
MonthlyCount = g.Select(act => act.Date.Day).Distinct().Count(),
Month = g.Key.Month,
Year = g.Key.Year
};
Run Code Online (Sandbox Code Playgroud)
我不知道L2S能否g.Select(act => act.Date.Day).Distinct.Count()正确转换内部.
| 归档时间: |
|
| 查看次数: |
2025 次 |
| 最近记录: |