Datatable: выбор значений на основе даты и времени - PullRequest
0 голосов
/ 15 декабря 2011

Наличие таблицы данных с такими значениями (например):

 Quantity       ReferenceDate
87.000000   2011-11-24 15:12:26.990
58.000000   2011-11-24 15:12:26.030
87.000000   2011-11-24 12:18:27.180
58.000000   2011-11-24 13:12:27.027
87.000000   2011-11-24 19:22:27.563
13.000000   2011-11-24 19:40:27.123

с переменной DateTime, которая имеет только час, например

DateTime mySelectDate = new DateTime (2011,12,15,19,00,00)

как мне получить sum(Quantity) для значений, которые "падают" в этот час?

В моем примере я должен получить Sum(Quantity) = 100 (87 + 13)

Luigi

1 Ответ

3 голосов
/ 15 декабря 2011

Использование Linq to DataSet :

DateTime mySelectDate = new DateTime (2011,12,15,19,00,00);
DateTime endDate = mySelectDate.AddHours(1);

var sum = table.Rows.AsEnumerable().
               .Where(row =>       
               {
                 var referenceDate = row.Field<DateTime>("ReferenceDate");
                 return ((referenceDate >= mySelectDate ) && (referenceDate < endDate));
               })
               .Sum(row => row.Field<double>("Quantity"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...