Linq SQL加入我已经通过StackOverflow看过,并尝试从几个职位的东西,但我完全卡住。基本上我有下面的查询(LinqPad测试),对于“总和”值给我两次相同的值。我真正想要的是对同一个表的连接,按日期分组,并显示来自连接表和原始表的基本相同列(值)的总和。Linq SQL加入与组和总计
我发现你不能在LINQ中使用别名(即在SQL FieldName中作为'NewFieldName'),所以不知何故我需要总结t.Value和p.Value,并在SiteID和EntryDate旁边显示它们在我的结果。
(from p in DailyStatistics
join t in DailyStatistics on new { p.EntryDate, p.SiteID} equals new { t.EntryDate, t.SiteID}
where t.Metric == "MyVisitors"
&& p.Metric == "MyVisits"
&& p.EntryDate >= DateTime.Parse("2013-08-15")
&& p.EntryDate <= DateTime.Parse("2013-08-21")
group p by new { t.SiteID, p.EntryDate } into s
orderby s.Key.EntryDate
select new {s.Key.SiteID, s.Key.EntryDate, SumVisits = s.Sum(t => t.Value), SumVisitors = s.Sum(x => x.Value) })
这其中尤其是我试过了,但不能完全使其适合我的需求: SQL multiple joins and sums on same table
任何想法将欣然接受:-)
'任何想法都会被高兴地接受,即使是一个坏主意?我希望你的“接受”意味着“被采纳”:)) –
你正在通过相同的字段加入同一个表? –
@KingKing肯定,我会接受他们,尝试它,失败,然后再试一次:-)似乎是我的工作日在这一刻:-) – Dominik