2017-05-04 7 views
0

Ich habe eine Datentabelle enthält Daten wie:Datentabelle select max Summe von zwei Spalten

Id | Val1 | Val2 
0 | 0 | 1 
1 | 3 | 0 
2 | 0 | 3 
3 | 2 | 1 

Ich brauche den MAX-Wert der Summe der Val1 + Val2 kennen (im Beispiel Tabelle 3) und extrahieren Zeilen mit diesen Werten.

Ich weiß, wie ich extrahieren können Zeilen mit:

MyTable.Select("(Val1 + Val2) = 3") 

Aber ich bin nicht in der Lage den maximalen Wert der Summe zu bekommen, damit sie in die setzen „Select“

Antwort

1

Ich glaube, Sie haben durch die Tabelle in einer Schleife um die maximale Summe zu finden, die LINQ getan werden könnte, mit:

Dim maxSum = (
    From r In MyTable.AsEnumerable() 
    Select r.Field(Of Integer)("Val1") + r.Field(Of Integer)("Val2") 
).Max() 

Und dann, dass nur verwenden in Ihrem wählen:

MyTable.Select("(Val1 + Val2) = " & maxSum) 
+0

Danke !, +1 für die Logik, aber ich habe direkt um das Datatable geloopt – genespos

Verwandte Themen