oracle:rownum 使用
2008-11-21 09:03
288 查看
rownum 是伪列,是系统加上的,不是真实存在的列,所以:
1. select * from tab_name where rownum<10 and rownum>1
查询语句查询不到结果,理由:对于rownum <10 的纪录中的第一条记录而言, rownum = 1 ,条件rownum >1 就把这条记录排除了,那么由于第一条记录被排除了那么导致第二条记录的rownum=1 ,仍然还是被排除了,直到最后一条记录都是被排除掉的;
2. select * from term where rownum<=10 and rownum>1
查询语句查询不到结果,理由同上;
3. select * from term where rownum<=10 and rownum>=1
可以查询到结果,rownum <= 10 取得的时前10条记录,都满足条件rownum >= 1,所以得到10条记录;
4. select * from term where rownum<10 and rownum>=1
可以查询到结果,rownum < 10 取得的时前9条记录,都满足条件rownum >= 1,所以得到9条记录;
而SQL SERVER中应该这样:SELECT *, ROW_NUMBER() OVER(ORDER BY SalesOrderID) AS rownum
FROM [tablename]结果如下:
rownum speaker track score
------ ---------- ---------- -----------
4 Kathy Sys 8
5 Michele Sys 8
6 Mike DB 8
或者
select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp where ID_Num>10 and ID_Num<=20
1. select * from tab_name where rownum<10 and rownum>1
查询语句查询不到结果,理由:对于rownum <10 的纪录中的第一条记录而言, rownum = 1 ,条件rownum >1 就把这条记录排除了,那么由于第一条记录被排除了那么导致第二条记录的rownum=1 ,仍然还是被排除了,直到最后一条记录都是被排除掉的;
2. select * from term where rownum<=10 and rownum>1
查询语句查询不到结果,理由同上;
3. select * from term where rownum<=10 and rownum>=1
可以查询到结果,rownum <= 10 取得的时前10条记录,都满足条件rownum >= 1,所以得到10条记录;
4. select * from term where rownum<10 and rownum>=1
可以查询到结果,rownum < 10 取得的时前9条记录,都满足条件rownum >= 1,所以得到9条记录;
而SQL SERVER中应该这样:SELECT *, ROW_NUMBER() OVER(ORDER BY SalesOrderID) AS rownum
FROM [tablename]结果如下:
rownum speaker track score
------ ---------- ---------- -----------
4 Kathy Sys 8
5 Michele Sys 8
6 Mike DB 8
或者
select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp where ID_Num>10 and ID_Num<=20
![](http://imgcache.qq.com/ac/b.gif)
相关文章推荐
- Oracle中rownum的使用
- Oracle的rownum的原理和使用【转】
- Oracle在rownum使用结果集排序
- Oracle的rownum原理和使用
- oracle 使用leading, use_nl, rownum调优
- Oracle中的rownum不能使用大于>的问题
- oracle使用rownum跟排序的冲突问题解决
- ORACLE 11g 使用ROWNUM完美解决ORA-00600:内部错误代码
- Oracle的rownum原理和使用
- oracle中的rownum的使用说明
- oracle 使用leading, use_nl, rownum调优
- Oracle中的rownum不能使用大于>的问题
- 解决oracle使用rownum排序分页排序字段不唯一导致分页错误
- oracle_SQL中ROWID与ROWNUM的使用
- oracle 中使用 rownum 的一个误区
- Oracle的rownum原理和使用
- oracle:rownum 的使用技巧
- oracle中rownum使用注意事项
- 菜鸟上路之oracle中rowid和rownum的使用 笔记整理
- Oracle中rownum在结果集中排序的使用