[英]SQL to LINQ C# EntityFramework
我正在将所有直接的SQL程序转换为Entity Framework 。 所以我需要LINQ和LE 。
但是我不能在LINQ中做到这一点:
SELECT
a.abteilung,
sum(d.kosten)
FROM
tdaten d,
abteilung a
WHERE
d.sourcenr = a.sourcenr AND
d.datum between '" + string.Format("{0:yyyy-MM-dd}", DTP_from.Value) + "'
and '"+string.Format(format: "{0:yyyy-MM-dd}", arg0: DTP_to.Value)+"'
GROUP BY
a.abteilung;", _con);
谢谢
一个选项。
整体可以分解成LINQ中的3个子查询。
以下是查询。:
var results = from a in abteilung
join d in tdated on d.sourcenr equals a.sourcenr
where
d.dateum >= fromDate && d.datum <= ToDate.AddDays(1)
select new {a.abteilung, d.kosten};
var sumOfKotsen = results.Sum(x=>x.kosten);
var groupResult = results.GroupBy(x=>x.abteilung);
假设dateFrom
和ToDate
是DateTime对象。
像这样吗
from a in abteilung
join d in tdaten
on a.sourcenr equals d.sourcenr
where d.datum >= DTP_from.Value && d.datum <= DTP_to.Value
group d by a.abteilung into g
select new
{
abteilung = g.Key,
kosten = g.Sum(d => d.kosten)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.