0

所以我有一个名为“用户”的数据表,看起来像这样。

UserName | Rank | Amount | OrderCount
jsmith   |  2   |  30    |    15
jdoe     |  2   |  30    |    0
japple   |  2   |  30    |    5

我正在尝试创建一个函数,该函数将通过并返回具有最低 OrderCount 的用户名。到目前为止,我有以下内容:

Function DetermineBestUser(ByVal usertable As DataTable) As String

    Dim bestchoice As DataRow()

    bestchoice = usertable.Select("Rank = 2", "OrderCount ASC")

    Return bestchoice(0)(0).ToString
End Function

我确实看到了一个问题,我的排名将是 1 或 2。如果用户的排名是 1,即使排名为 2 的用户的 OrderCount 较低,他们也应该得到返回。orderCount 不应该超过 Amount 列中的值(已经有一个函数来检查它)。

因此,在此示例中,我希望返回 jdoe,因为她的 OrderCount 最低。

4

1 回答 1

0

试试这个:

bestchoice = usertable.Select("", "Rank DESC, OrderCount ASC")
于 2013-04-12T18:52:01.560 回答