以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  min函数如何使用  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28673)

--  作者:tanfng
--  发布时间:2013/2/8 20:31:00
--  min函数如何使用
     如何使用MIN函数求同一行最小值!
--  作者:明丰
--  发布时间:2013/2/8 22:38:00
--  

\'在命令窗口这样试试:

 

\'找出表A第一列最小值(列必须为数值型,比较整列)
Dim r As Decimal = DataTables("表A").Compute("Min(第一列)")
output.show(r)

 

\'找出表A当前行第一列、第二列、第三列中最小值(列为数值型)

 

Dim dr As Row = Tables("表A").current \'表A当前行
Dim d As Decimal
Dim Values() As Decimal = {dr("第一列"),dr("第二列"),dr("第三列")} \'要比较的列
For i As Integer = 0 To values.length - 1
    If i = 0 Then
        d = Values(i)
    ElseIf Values(i) < d Then
        d = Values(i)
    End If
Next
output.show(d)

[此贴子已经被作者于2013-2-9 9:09:37编辑过]

--  作者:yczc
--  发布时间:2015/8/6 11:15:00
--  
那这样说来min()函数没有用啊,可不可以以min(a,b,c,d)然后得出最小的数呢
--  作者:yczc
--  发布时间:2015/8/6 11:38:00
--  
以复制黏贴,证明以上代码无效
--  作者:yczc
--  发布时间:2015/8/6 11:39:00
--  
该改动的都改动过了
--  作者:jialihaha
--  发布时间:2015/8/6 11:47:00
--  
http://www.foxtable.com/help/topics/0280.htm
多个的,就得循环比较了
[此贴子已经被作者于2015/8/6 11:49:23编辑过]

--  作者:大红袍
--  发布时间:2015/8/6 12:00:00
--  

Dim cs() As String = {"第一列", "第二列", "第三列"}

For Each dr As DataRow In DataTables("表A").Datarows
    Dim min = dr(cs(0))
    For Each c As String In cs
        If dr(c) < min Then min = dr(c)
    Next
    dr("第十列") = min
Next