下面的查询语句是,没秒钟查一次,第一次是第一行,第二次是一、二行,第三次是一、二、三行,一次类推,下面是程序:
string mySelectQuery = "select top " + m + " [OrderID],[Freight] from [Orders] where [OrderID] not in (select top "+ m +"-1 [OrderID] from [Orders] order by [OrderID] asc)order by [OrderID] asc ;";
   能不能在此基础上实现,查询几次后,我把前面的第一行去掉,在查询几次后,把第二行去掉?望高手指教,怎么编程实现?

解决方案 »

  1.   

    SELECT * FROM temptable_test a WHERE monitorid=(SELECT TOP 1 monitorid FROM 
    ( select top 10 monitorid from temptable_test where dafid=a.dafid order by monitorid asc )T
    WHERE dafid=a.dafid order by monitorid desc)--monitorid为自动增长列返回表里同不同ID号的第十条记录你参照一下
      

  2.   

    你的OrderID可以确定每次从那个ID号开始.
    取多少条记录
      

  3.   

     这里的dafid 是列名吗?
      

  4.   

    declare @begin int
    declare @end intset @begin = 1
    set @end = 2select A.* from (select row_number() over(order by [你的排序字段]) as row, * 
    from [你的表]) as A where row >= @begin  and row < @end
    程序中,不断修改@end参数,即得到你之前的效果。 如果查询几次后,希望移除最前一条,那么,修改@begin参数 + 1, 即可。 再查几次,@begin再+1....