现有一数据库(*。mdb)
有字段  姓名\总分\名次
现有一组数据。。
名次 想实现自动排列.
例:
   张三  450   
   dddd  500
   ffff  560
   eeee  410
运行后:
   张三  500   2
   dddd  450   3
   ffff  560   1
   eeee  410   4

解决方案 »

  1.   

    这个问题小弟也没见过.不过你可以先用order by 语句进行排序,然后在添加时这样写:
    比如你的名次字段设置为datafield为,你的textbox.txt添加的分数为txtfen
    默认的自动添加的字段为autoaddnew
    排序顺序为为升序排序
    那么可以这样完成:
    if txtfen.text>adodc1.recordset.field(datafield)'如果你添加的数据大于数据库中第一条数据,则游标下移,比较下条记录
    adodc1.recordset.next
    i=i+1
    if i>adodc1.recordset.recordcount then   '如果全部比较完大于现有所有数据。那么添加到末尾。并且自动添加I的值到autoaddnew字段
    adodc1.recordset.movelast   
    adodc1.recordset.addnew   
    autoaddnew=i
    end if
    else adodc1.recordset.addnew
    adodc1.recorset.updata
    adodc1.refresh
    for i=0 to adodc1.recordset.recordcount
    autoaddnew=i
    next for
    end if
      

  2.   

    order by 总分 不就得了
      

  3.   

    select 姓名,总分,排名=(select isnull(sum(1),0)+1 from table a where a.xse> table.xse)from table