以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  成绩排名  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91463)

--  作者:刘林
--  发布时间:2016/10/11 14:21:00
--  成绩排名
老师,你好,有一个成绩表(外部数据),单位名称,考试名称,年级,班级,总分班排名,年级,排名等字段,我想在后台直接将一个单位名称,考试名称,按总分排出班排名,年级排名,p看了帮助,整不好,请帮指导,,怎么写代码,初学者,不见笑,谢谢
--  作者:有点蓝
--  发布时间:2016/10/11 14:36:00
--  
既然都有排名字段了,直接排序不就行?

具体例子说明。别人没有办法根据一句话给你写代码

--  作者:刘林
--  发布时间:2016/10/11 20:03:00
--  
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.c
cmd.CommandText = "SE   LECT * From {成绩}"
dt = cmd.ExecuteReader()
Dim Arys As List(Of String())  = dt.GetValues("单位名称|考试名称|年级代码")
For Each Ary As String() In Arys
    Dim drs As List(Of DataRow) = dt.Select("[年级代码] = " & ary(2), "总分 DESC")
    For n As Integer = 0 To drs.Count - 1 \'遍历所有行
        
        If n > 0 AndAlso drs(n)("总分") = drs(n-1)("总分") Then \'如果总分和上一行相同
            drs(n)("校序") = drs(n-1)("校序") \'则排名等于上一行
        Else
            drs(n)("校序") = n + 1 \'设置排名
        End If
    Next
Next

老师,我依照改了个排序代码,提示   无法找到列 总分。是不是因为总分是表达示列,这个怎么办,另外这个代码还有什么问题没的,请指导,谢谢

--  作者:有点蓝
--  发布时间:2016/10/11 20:12:00
--  
表达式列不存在数据库的。总分怎么计算的?
[此贴子已经被作者于2016/10/11 20:12:28编辑过]

--  作者:刘林
--  发布时间:2016/10/11 21:59:00
--  
总分是语总+数总+英总+政总+等
--  作者:刘林
--  发布时间:2016/10/11 22:00:00
--  
现在的问题是,当表加载了哪个班,如果再执行统计,原有的校序就变了,统计范围就是这个班的,这样不能后统数据统计。
--  作者:有点蓝
--  发布时间:2016/10/11 22:18:00
--  
上例子吧
--  作者:刘林
--  发布时间:2016/10/11 22:33:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:2.rar


现在我试了下把 语总 算出来,假设以语总的排校序,但有个问题是相同分数他的序不相同,请看下,谢谢

--  作者:有点蓝
--  发布时间:2016/10/11 22:56:00
--  
请上完整例子
--  作者:刘林
--  发布时间:2016/10/12 7:55:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

请老师帮看一下,谢谢