select top 10 * from table order by id asc

解决方案 »

  1.   

    select top 10 * from (select top 20 * from table order by id desc)a  order by a.id
      

  2.   

    select top 10 * from table
    where id not in (select top 10 id from table order by id)
    order by id
      

  3.   

    select identity(int,1,1) as idd,* into #t from yourtable 
    select * from #t where idd between 11 and 20
    drop table #t
      

  4.   

    更正一下:select top 10 * from table
    where id not in (select top 10 id from table order by id desc)
    order by id desc
      

  5.   

    select top 10 from table where id not in (select top 10 id from table)
      

  6.   

    CREATE TABLE #aa (ID INT IDENTITY(1,1),CC INT)DECLARE @I INT
    SET @I = 1WHILE @I <=40 
    BEGIN
      INSERT #aa VALUES(@I)
     SET @I = @I+1
    END select top 10 * from #aa
    where id not in (select top 10 id from #aa order by id desc)
    order by id descdrop table #aa
      

  7.   

    select top 10 * from 
    (select top 20 * from table order by id desc) order by id 
      

  8.   

    select top 4 * from t1 where not exists ( select top 2 * from t1)
      

  9.   

    select top 10 * from table where id not in (select top 10 id from table order by id desc) order by id desc先排除前10条记录,就可以找到11-20的记录了
      

  10.   

    select top 10 * from 
    (select top 20 * from table order by id desc) order by id 
      

  11.   

    更正:
    select top 10 * from table where id not in (select top 10 id from table order by id desc) order by id desc
      

  12.   

    select top 10 * from 
    (select top 20 * from table order by id) as a  
    order by a.id desc这是第2种方法,先找出前20行,再找11-20行