以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  【上传了例子】去掉最高分最低分然后求平均值有哪些思路?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=22984)

--  作者:hanxuntx
--  发布时间:2012/8/29 13:28:00
--  【上传了例子】去掉最高分最低分然后求平均值有哪些思路?

附件中是一个考核记录表,针对每一个【被考核对象】进行统计

去掉一个最高分,一个最低分,然后求得平均分

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:去掉最高最低分求平均分.foxdb

[此贴子已经被作者于2012-8-30 9:40:17编辑过]

--  作者:hanxuntx
--  发布时间:2012/8/29 14:13:00
--  
搞定的方法不见得一定是好方法
--  作者:狐狸爸爸
--  发布时间:2012/8/29 15:12:00
--  
纸上不谈兵,用具体的例子说话。
--  作者:lihe60
--  发布时间:2012/8/29 16:00:00
--  
sum-max-min
--  作者:blackzhu
--  发布时间:2012/8/29 16:06:00
--  
你是去掉分值?


--  作者:lihe60
--  发布时间:2012/8/29 17:15:00
--  

楼主为奥运会设计计分器。


--  作者:jspta
--  发布时间:2012/8/29 17:47:00
--  

同意六楼的方法,1句sql语句读取,然后计算,搞定


--  作者:hanxuntx
--  发布时间:2012/8/30 9:41:00
--  
顶一下
--  作者:狐狸爸爸
--  发布时间:2012/8/30 14:15:00
--  
Dim nms As List(of String) = DataTables("考核记录表").GetUniqueValues("", "被考核对象")
For Each nm As String In nms
    Dim cnt As Integer = DataTables("考核记录表").Compute("Count([_Identify])","被考核对象 = \'" & nm & "\'")
    Dim sum As Double = DataTables("考核记录表").Compute("Sum(分值)","被考核对象 = \'" & nm & "\'")
    Dim Max As Double = DataTables("考核记录表").Compute("Max(分值)","被考核对象 = \'" & nm & "\'")
    Dim Min As Double = DataTables("考核记录表").Compute("Min(分值)","被考核对象 = \'" & nm & "\'")
    output.show(nm & ":" & Math.Round((sum - max- min) / (cnt -2),2))
Next

--  作者:lihe60
--  发布时间:2012/8/30 14:51:00
--  
以下是引用狐狸爸爸在2012-8-30 14:15:00的发言:
Dim nms As List(of String) = DataTables("考核记录表").GetUniqueValues("", "被考核对象")
For Each nm As String In nms
    Dim cnt As Integer = DataTables("考核记录表").Compute("Count([_Identify])","被考核对象 = \'" & nm & "\'")
    Dim sum As Double = DataTables("考核记录表").Compute("Sum(分值)","被考核对象 = \'" & nm & "\'")
    Dim Max As Double = DataTables("考核记录表").Compute("Max(分值)","被考核对象 = \'" & nm & "\'")
    Dim Min As Double = DataTables("考核记录表").Compute("Min(分值)","被考核对象 = \'" & nm & "\'")
    output.show(nm & ":" & Math.Round((sum - max- min) / (cnt -2),2))
Next

为什么不用SQL语言写呢?