从publish 表中取出第 n 条到第 m 条的记录: 
SELECT TOP m-n+1 * 
FROM publish 
WHERE (id NOT IN 
    (SELECT TOP n-1 id 
     FROM publish)) 
id 为publish 表的关键字 

解决方案 »

  1.   

    或者取前20-30條記錄select top 10 T.* from (select top 30 * from tablename)T order by T.id desc
    ---以原來排序方法得相反,再取前10條記錄
      

  2.   

    SELECT TOP m-n+1 * 
    FROM publish 
    WHERE (id NOT IN 
        (SELECT TOP n-1 id 
         FROM publish)) 
    这样查询的效率很低的,建议不要采用,对于分页显示完全可以在代码中解决,全区查处,利用代码里的机制解决。
      

  3.   

    select identity(int,1,1) ID,* into #tp
    from table1
    select * from  #tp where name like 'a%' and (id between 10 and 20)
      

  4.   

    ELECT TOP m-n+1 * 
    FROM publish 
    WHERE (id NOT IN 
        (SELECT TOP n-1 id 
         FROM publish)) 
    这样查询的效率很低的,建议不要采用,对于分页显示完全可以在代码中解决,全区查处,利用代码里的机制解决。-----低??你聽誰說得?隻要你有設置主鍵,它是絕對和exits一樣效率得,高效得分頁存儲過程都是類似這種得方法寫出來
      

  5.   

    參照
    http://community.csdn.net/Expert/topic/3963/3963647.xml?temp=.78706