我有一個LINQ到SQL查詢產生重複。我似乎想出如何消除這些重複的記錄。也許有人在這裏可以提供幫助。這個想法是檢索table2中「總數」的總和,該總數大於表1中的日期,這些日期大於表2的日期,並且表2中的日期大於2011-01-01。我已經實現了這一點,但由於重複,我得到的金額正好是的兩倍。你的幫助是非常讚賞LINQ到SQL查詢重複在其中加入
表結構:
table1: id, date
table2: id, date, total
查詢
from t1 in table1
join t2 in table2 on t1.id equals t2.id into x
from y in x
where t1.id == "123" && t1.date > y.date && y.date > DateTime.Parse("2011-01-01")
group t1 by new { y.total} into g
select g.Sum(t1 => t1.total);
您可能在t2中有兩行匹配t1中的一行。連接產生兩行,現在在t1字段中總結兩個行的重複值。你應該用where替換join。 – 2012-04-04 10:16:31
我想這個,但似乎無法弄清楚如何正確地寫出這是我到目前爲止var query =從表 其中(從t2 t2在t2 其中t1.id ==「123」&& t1 .id == t2.id && t1.date> t2.date && t2.date> DateTime.Parse(「2011-01-01」) select t2.total) group t1 by t1.id into g select g.Sum(t2 => t2.total); – 2012-04-04 10:48:42