Найти строку с максимальным значением по столбцу - C#
Формулировка задачи:
Здравствуйте,
Нужно найти по части таблицы значение столбца С1, соответствующее максимальному значению по столбцу С2.
Или, на крайний случай, строку, содержащую максимум по С2.
Конструкция типа
к сожалению возвращает только максимум С2.
А нужна пара С1-С2...
На примере
Есть часть таблицы
С1 С2
1 11
22 222
3 33
Как найти пару С1=22, С2=222?
var qq = dt.AsEnumerable().
Where(бла-бла-бла).
Select(r => new
{
с1 = r.Field<double>("с1"),
с2 = r.Field<double>("с2")
}).
Max(r => r.с2);
PS Массив большой, поэтому хотелось бы обойтись без сортировки...
Решение задачи: «Найти строку с максимальным значением по столбцу»
textual
Листинг программы
var qq = dt.AsEnumerable()
.Where(z => z.Field<double>("c2") == dt.AsEnumerable().Max(r => r.Field<double>("c2")))
.Select(r => new
{
с1 = r.Field<double>("c1"),
с2 = r.Field<double>("c2")
}).First();