私のデータはこのように見えます
ID | START_DATE | END_DATE | Chapter
1 01/03/2013 05:15:14 01/03/2013 06:20:14 1
1 01/03/2013 06:25:33 01/03/2013 06:40:11 2
2 01/03/2013 05:01:34 01/03/2013 05:30:13 1
2 01/03/2013 05:31:20 01/03/2013 06:30:13 2
2 01/03/2013 06:32:20 01/03/2013 07:20:01 3
1 02/03/2013 05:15:14 01/03/2013 06:20:14 1
1 02/03/2013 06:25:33 01/03/2013 06:40:11 2
こんな結果が欲しい
ID | Date | Total Duration
1 01/03/2013 Time in Minutes
1 02/03/2013 Time in Minutes
2 02/03/2013 Time in Minutes
C#を使用してlinqでこれを行う方法はありますか?
回答:
回答№1は5日付とIDでアイテムをグループ化し、各グループの期間の合計を計算します。
var query = from r in records
group r by new { r.Id, r.StartDate.Date } into g
select new {
g.Key.Id,
g.Key.Date,
TotalDuration = g.Sum(x => (x.EndDate - x.StartDate).TotalMinutes)
};
ここは 作業プログラム.