2012-04-09 2 views
0

У меня есть данные, и я хотел бы получить номер MAX из этой таблицы, где Term Number (первая колонка) является определенным значением. Если мой datatable объявлен как dtMyTable, я предполагаю, что мне нужно использовать dtMyTable.Select(), но я не уверен, что это лучший способ. Любая помощь будет принята с благодарностью.VB.net Вывод выбора DataTable

С уважением,

Matt

ответ

0

Опцион заключается в использовании LINQ:

'Assumes integer and a default of 0. 
Dim intMax As Integer = 0 

'Filter the list by the "Certain Value" of the first column. 
Dim lstFilteredRows As List(Of DataRow) = (From dr As DataRow In dtMyTable _ 
              Where dr.Item(0) = "CertainValue").ToList() 

'Get the max value by looping through the filtered list. 
lstFilteredRows.ForEach(Sub(dr As DataRow) 
          If CInt(dr.Item("ColumnNameWithMaxValue")) > intMax Then 
           intMax = CInt(dr.Item("ColumnNameWithMaxValue")) 
          End If 
         End Sub) 
+0

работал красиво. Спасибо. –

1

dtMyTable.Select() выглядит, как вы используете Linq, так почему бы не dtMyTable.Where(<term number is a certain value>).Max(<column you want max value of>)

Linq имеет встроенный in Max() функция.

+1

+1 для .Max. Спасибо за это. – N0Alias

+0

Я ценю помощь! –

+0

Если это помогает, вы всегда можете его пометить;) – SouthShoreAK

Смежные вопросы