0
我有這個SQL,並希望將其轉換爲LINQ。該SQL是用SUM合併在db列,我想這樣做的LINQ:SQL與SUM()轉換爲LINQ
SELECT
[company]
,[employeeid]
,[year]
,[period]
,[project]
,[activity]
,SUM(hours1) as day1
,SUM(hours2) as day2
,SUM(hours3) as day3
,SUM(hours4) as day4
,SUM(hours5) as day5
,SUM(hours6) as day6
,SUM(hours7) as day7
,[projecttype]
,[runtableid]
FROM ExportHoursToERP
where runtableid = 6090
group by [company], [employeeId],[year],[period],[project],[activity],[projecttype],[runtableid]
這是我一直沒有成功到目前爲止已經試過:
var DbRows = from r in dal.ExportHoursToERPs
where r.runtableid.Equals(6090)
group r by new { r.company, r.employeeid, r.year, r.period, r.project, r.activity, r.projecttype, r.runtableid } into og
select new
{
company = r.company,
Employee = r.employee,
Year = r.year,
WeekNo = r.period,
Project = r.project,
Activity = r.activity,
day1 = og.Sum(y => y.hours1)
day2 = og.Sum(y => y.hours2)
day3 = og.Sum(y => y.hours3)
day4 = og.Sum(y => y.hours4)
day5 = og.Sum(y => y.hours5)
day6 = og.Sum(y => y.hours6)
day7 = og.Sum(y => y.hours7)
ProjectType = r.projecttype,
RuntableId = r.runtableid
};
什麼是不成功的?你有錯誤嗎?錯誤的結果?還有別的嗎? – Chris
你有錯誤?查詢看起來不錯,我猜。另外,不應該用引號 - 'r.runtableid.Equals(「6090」)'? – TheUknown