select top 1 * from  DBtable加上top 1 表示只显示最上面一行!

解决方案 »

  1.   

    select *,age=max(age) from yourtable
      

  2.   

    不是已经答了吗select * from a a1
    where id=(select top 1 id from a where type=a1.type order by age desc)
      

  3.   

    参考一下这个
    大家好,问个问题,在一个表中,有3个字段,如下
    姓名
    班级
    成绩
    我现在想取出每个班成绩为前五名同学的姓名怎么实现呀,谢谢create table cj (name char (10),bj char (10),cj [decimal](12, 2) )
    insert into cj (name,bj,cj)
    select '张一','一班',100
    union 
    select '张二','一班',80
    union 
    select '张三','一班',40
    union 
    select '张四','一班',75
    union 
    select '张五','一班',99
    union 
    select '张六','一班',56
    union 
    select '李一','二班',20
    union 
    select '李二','二班',99
    union 
    select '李三','二班',60
    union 
    select '李四','二班',45
    union 
    select '李五','二班',66
    union 
    select '李六','二班',28
    -----
    select * from cj a where a.name  in (select top 4 name from cj where bj=a.bj 
     order by bj desc,cj desc) order by bj desc,cj desc