注册 登录
编程论坛 SQL Server论坛

数据库查询问题

暗尘 发布于 2011-12-06 21:07, 628 次点击
一组数据 我要倒序查询显示  并且每次只显示头五个 用来做这个分页的  怎么使用查询呢
如:
  select top 5  * from 表一 where  id not in(selelct top 10 id from 表一 )  这是顺序的  
  我要倒序 显示的
  求解
3 回复
#2
png2011-12-06 23:18
假如
ID
1
2
3
4
5
6
7
8
9
10
11
12

select top 5  *
from 表一
order by id desc

得到
12
11
10
9
8

select top 5  *
from 表一
where  id in(selelct top 10 id from 表一 order by id desc )
order by id

得到
3
4
5
6
7

#3
zhouixi2011-12-14 14:28
select  *  from  (select top 5  * from 表一 order by id desc) as 表一 order by id desc

这样可否,
#4
johnjiang2011-12-20 11:34
因为order by在top之前就会执行,所以在你需要取前多少条记录的时候只需要在后面加上order by字句即可:
select top 5  * from 表一 where  id not in(selelct top 10 id from 表一 ) order by id desc
1