2012-04-09 57 views
0

我有一个数据表,我想从这个表中获得MAX数字,其中Term Number(第一列)是一个特定的值。如果我的datatable被声明为dtMyTable,我假设我需要使用dtMyTable.Select(),但我不确定这是否是最好的方法。任何帮助将不胜感激。VB.net DataTable选择语句

问候,

马特

回答

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

精美地工作。谢谢。 – 2012-04-09 17:00:00

1

dtMyTable.Select()看起来像你使用LINQ,那么为什么不dtMyTable.Where(<term number is a certain value>).Max(<column you want max value of>)

的LINQ有一个内置在Max()功能。

+1

+1 .Max。感谢那一个。 – N0Alias 2012-04-09 16:38:00

+0

我很感激帮助! – 2012-04-09 16:59:44

+0

如果有帮助,欢迎您将其标记为;) – SouthShoreAK 2012-04-09 17:13:11