大家都知道学生的成绩排名把!!例如:  name  总成绩
        x1    560
        x2    550
        x3    550
        x4    510
        x5    500
        x6    500         ;;;;;;他们的 名次是
     name  名次
      x1    1
      x2    2
      x3    2
      x4    4
      x5    5
      x6    5        ;;;;
           n
 
    请大家给出程序或算法!!

解决方案 »

  1.   

    排序算法……
    for i=1 to count-1
      s=i
      for j=i+1 to count
        if a[j]<a[s] then s=j
      next j
      b=a[i]
      a[i]=a[s]
      a[s]=b
    next i
      

  2.   

    用程序实现不难,用循环语句加IF语句就搞定了。
    SQL语句呢?
      

  3.   

    select *,
           (  select count(*)+1 
              from ( select [name],总成绩 from TableName group by 总成绩,[name] ) b 
              where 总成绩>a.总成绩
           ) as 名次
    from 
      (  select [name],总成绩 from TableName group by 总成绩,[name]) a
    order by 总成绩 desc 建议不要用name作字段名
      

  4.   

    直接一个sql就搞定了,同意楼上的楼上
      

  5.   

    还编什么程,直接copy到excel去搞一下不就完了吗。