我有一个数据表,我想从这个表中获得MAX数字,其中Term Number(第一列)是一个特定的值。如果我的datatable被声明为dtMyTable,我假设我需要使用dtMyTable.Select(),但我不确定这是否是最好的方法。任何帮助将不胜感激。VB.net DataTable选择语句
问候,
马特
我有一个数据表,我想从这个表中获得MAX数字,其中Term Number(第一列)是一个特定的值。如果我的datatable被声明为dtMyTable,我假设我需要使用dtMyTable.Select(),但我不确定这是否是最好的方法。任何帮助将不胜感激。VB.net DataTable选择语句
问候,
马特
一种选择是使用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)
dtMyTable.Select()
看起来像你使用LINQ,那么为什么不dtMyTable.Where(<term number is a certain value>).Max(<column you want max value of>)
的LINQ有一个内置在Max()功能。
+1 .Max。感谢那一个。 – N0Alias 2012-04-09 16:38:00
我很感激帮助! – 2012-04-09 16:59:44
如果有帮助,欢迎您将其标记为;) – SouthShoreAK 2012-04-09 17:13:11
精美地工作。谢谢。 – 2012-04-09 17:00:00