表格如下:
id time
01  '9:01'
02  '9:02'
03  '9:03'
..   ...
33  '9:33'
..   ...求:在'9:30'前的倒数10条记录?就是从id 20-29的十条。

解决方案 »

  1.   

    select top 10 * from tabel a where a.id=(select top 29 id from table  order by id desc)
      

  2.   

    select top 10 * from tablename
    where time < '9:30'
    order by time desc
      

  3.   

    如何取最后一条呢?
    比如ID 20的?那ID20是最后一条吗?select top 1 * from tablename order by time desc
      

  4.   

    select top 10 * from tabel a where a.id=(select top 29 id from table  order by id desc)
    这个取不到吗?
      

  5.   

    select top id from table1 where time!>'9:30' order by time desc
      

  6.   

    select top 10 id from table1 where time!>'9:30' order by time desc
      

  7.   

    bz586() ( ) 信誉:100    Blog  2006-11-18 09:15:23  得分: 0  
     
     
       就是10条内的最后一条。
       
    ====================================10条内的最后一条,是第十条吗?SELECT top 1 * from
    (select top 10 * from tablename)t
    order by id desc
      

  8.   

    就是10条内的最后一条?
    select top 1 * from (select top 10 id from table1 where time!>'9:30' order by time desc)a order by time asc--注意排序asc,desc
      

  9.   

    如何取最后一条呢?
    select top 1 * from tb order by time desc
      

  10.   

    select top 1 * from 
    (select top 10 * from tablename
    where time < '9:30'
    order by time desc
    )t order by time
      

  11.   

    谢谢!
    顺便问一下:在存储过程中把10 作为参数传入,
    提示出错:服务器: 消息 170,级别 15,状态 1,过程 re,行 16
    第 16 行: '@last' 附近有语法错误。select  @starttime=min(time) from (
    select 
    top @last * from m where
    time<@endtime
    order by time desc
    )a