select top 1 a.LogID from (select top 5 * from  AdminLog ) as  a order by a.LogID desc
   select max(a.LogID) from (select top 5 * from  AdminLog ) as a  为什么找出来的不是前5条里面的最大的 而是所有数据的最大的

解决方案 »

  1.   

    select top 5 * from AdminLog 这句有没有写order by 
      

  2.   

    select max(a.LogID) from (select top 5 * from AdminLog order by logid) as a
    应该这样子就行了
      

  3.   

    select top 1 a.LogID from (select top 5 * from AdminLog order by a.LogID desc) as a 
      

  4.   

    select max(a.LogID) from (select top 5 * from AdminLog order by LogID desc) as a
      

  5.   

    select max(a.LogID) from (select row_number() over(order by logid desc) as rowNum,* from AdminLog Where rowNum between 1 and 5) as a