如何将以下SQL查询转换为LINQ?如何使用group by子句将SQL select count转换为LINQ?
SELECT [EmpUserName],[LeaveTypeName],Count([NoOfDays]) as 'Count'
FROM [NSL.LeaveSystem02].[dbo].[ProcessedCPLeaves]
GROUP BY [LeaveTypeName],[EmpUserName],[ProcessingDate]
请帮忙。
感谢
如何将以下SQL查询转换为LINQ?如何使用group by子句将SQL select count转换为LINQ?
SELECT [EmpUserName],[LeaveTypeName],Count([NoOfDays]) as 'Count'
FROM [NSL.LeaveSystem02].[dbo].[ProcessedCPLeaves]
GROUP BY [LeaveTypeName],[EmpUserName],[ProcessingDate]
请帮忙。
感谢
以下是方法的语法
ProcessedCPLeaves
.GroupBy(item => new {
LeaveTypeName = item.LeaveTypeName,
EmpUserName = item.EmpUserName,
ProcessingDate = item.ProcessingDate
}).Select (grouping => new {
EmpUserName =grouping.Key.EmpUserName,
LeaveTypeName = grouping.Key.LeaveTypeName,
TotalCount= grouping.Count()
});
这给一个尝试,
from a in ProcessedCPLeaves
group a by new
{
LeaveTypeName = a.LeaveTypeName,
EmpUserName = a.EmpUserName,
ProcessingDate = a.ProcessingDate
} into g
select new
{
EmpUserName = g.Key.EmpUserName
LeaveTypeName = g.Key.LeaveTypeName
TotalCount = g.Count()
}
'按组新{A}由new'从未见过的语法。错字或我错过了什么? :) –
哦,是的! @JoachimIsaksson':D' –
它是“TotalCount => grouping.Count()”或“TotalCount = grouping.Count()”? : -/ 因为它给出了一个错误,当你输入 – CD1234
@ CD1234时,它是'='而不是'=>'。 – Tilak
谢谢蒂拉克.....这工作! :) – CD1234