select top 2 * from tablename where id<@id order by id desc
union all
select top 3 * from tablename where id>@id order by id

解决方案 »

  1.   


    搞错了,有语法错误。更正:select * from (select top 2 * from tablename where id<@id order by id desc) a
    union all
    select * from (select top 3 * from tablename where id>@id order by id) b
      

  2.   

    select top 2 * from table1 order by id 
    union all
    select top 3 * from table1 order by id desc
      

  3.   

    select top 2 * from table1 order by id
    select top 3 * from table1 order by id desc
      

  4.   

    樓上leeboyan(宝宝)的:  不對吧victorycyz(中海) 的是對的﹕
    select * from (select top 2 * from tablename where id<@id order by id desc) a
    union all
    select * from (select top 3 * from tablename where id>@id order by id) b
      

  5.   

    declare @id int
    select @id = 17
    (select * from bos_sales_det where code between @id - 2 and @id -1 )
    union
    (select * from bos_sales_det where code between @id +1 and @id +3 )