select * from 表A where id in(select top 5 id from 表A order by id desc) order by id
--或者: select * from( select top 5 * from 表A order by id desc )a order by id
select * from table a where id in (select top 5 id from table order by id desc)
--drop table #temp create table #temp (id int, 字段A char(5) ) declare @I int,@j int,@Id int,@field char(5) declare loc_cur cursor local for select Id,Name from 表A(nolock) order by Id select @J=count(1) from 表A(nolock) set @i=1 open loc_cur fetch next from loc_cur into @Id,@field while @@FETCH_STATUS=0 begin if @i>@j-5 begin insert into #temp select @Id,@field end select @i=@i+1 fetch next from loc_cur into @Id,@field end close loc_cur deallocate loc_curselect * from #temp
where id in(select top 5 id from 表A order by id desc)
order by id
select * from(
select top 5 * from 表A order by id desc
)a order by id
create table #temp
(id int,
字段A char(5)
)
declare @I int,@j int,@Id int,@field char(5)
declare loc_cur cursor local
for select Id,Name from 表A(nolock) order by Id
select @J=count(1) from 表A(nolock)
set @i=1
open loc_cur
fetch next from loc_cur into @Id,@field
while @@FETCH_STATUS=0
begin
if @i>@j-5
begin
insert into #temp select @Id,@field
end
select @i=@i+1
fetch next from loc_cur into @Id,@field
end
close loc_cur
deallocate loc_curselect * from #temp