【问题标题】:datatable select max sum of two columns数据表选择两列的最大总和
【发布时间】:2017-05-04 15:57:27
【问题描述】:

我有一个包含如下数据的数据表:

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

我需要知道 Val1+Val2 之和的 MAX 值(在示例表中为 3),然后提取具有这些值的行。

我知道如何提取行:

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

但我无法获得总和的最大值,因此将其放入“选择”中

【问题讨论】:

    标签: vb.net select datatable sum max


    【解决方案1】:

    我认为您必须遍历表格才能找到最大总和,这可以使用 LINQ 完成:

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

    然后在你的选择中使用它:

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

    【讨论】:

    • 谢谢!,+1 的逻辑,但我直接围绕数据表循环
    猜你喜欢
    • 1970-01-01
    • 2018-05-18
    • 1970-01-01
    • 2011-01-27
    • 2020-09-08
    • 2021-01-06
    • 1970-01-01
    • 1970-01-01
    • 2013-02-10
    相关资源
    最近更新 更多