| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 628 人关注过本帖
标题:数据库查询问题
只看楼主 加入收藏
暗尘
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
快速回复:数据库查询问题
数据加载中...
 
   



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

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