我试图将这个连接查询复制到linq中,但是我不知道在哪里添加group by和order by语句。
select
c.CheckID,cv.Earnings
FROM
[Customers0].[pay].[CheckVendorCalc] as cv
inner join [Customers0].[pay].[Checks] as c on cv.checkid = c.checkid
where
c.CheckDate BETWEEN '2022-01-01'
AND '2022-12-31'
and c.CustomerID = 360
and c.EmployeeCode = '01'
and (
cv.TaxableEarnings != null
or cv.TaxableEarnings != 0)
group by
c.CheckID,cv.Earnings
order by
c.CheckID
var v1 = (from cv in db.CheckVendorCalcs
join c in db.Checks on cv.CheckID equals c.CheckID
where (c.CheckDate >= YTDStartDate && c.CheckDate <= YTDEndtDate && c.CustomerID == CustomerID && c.EmployeeCode == e.EmployeeCode && (cv.TaxableEarnings != null || cv.TaxableEarnings != 0)
select new { c.CheckID, cv.Earnings }).ToList();
3条答案
按热度按时间flseospp1#
您可以在ToList()之前执行GroupBy和OrderBy:
ax6ht2ek2#
查询后:
1.使用
.GroupBy()
按CheckID
和Earnings
列进行分组。1.提取每个组的密钥。
1.按
CheckID
排序。pzfprimi3#
请尝试以下查询:
也可以在投影后放置
orderby
: