标题:数据库查询问题
只看楼主
暗尘
Rank: 2
等 级:论坛游民
帖 子:22
专家分:37
注 册:2011-9-15
结帖率:25%
已结贴  问题点数:10 回复次数:3 
数据库查询问题
一组数据 我要倒序查询显示  并且每次只显示头五个 用来做这个分页的  怎么使用查询呢
如:
  select top 5  * from 表一 where  id not in(selelct top 10 id from 表一 )  这是顺序的  
  我要倒序 显示的
  求解
搜索更多相关主题的帖子: 数据库查询 where 
2011-12-06 21:07
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
得分:10 
假如
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

2011-12-06 23:18
zhouixi
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-7-4
得分:0 
select  *  from  (select top 5  * from 表一 order by id desc) as 表一 order by id desc

这样可否,
2011-12-14 14:28
johnjiang
Rank: 2
等 级:论坛游民
帖 子:3
专家分:10
注 册:2011-12-20
得分:0 
因为order by在top之前就会执行,所以在你需要取前多少条记录的时候只需要在后面加上order by字句即可:
select top 5  * from 表一 where  id not in(selelct top 10 id from 表一 ) order by id desc
2011-12-20 11:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-357153-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.112511 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved