在PLSQL中怎么能取到表中按ID降序排列的前十条记录???
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在PLSQL中怎么能取到表中按ID降序排列的前十条记录???相关的知识,希望对你有一定的参考价值。
参考技术A在PLSQL中怎么能取到表中按ID降序排列的前十条记录的sql语句是:
select rownum,t.* from (select * from test order by id desc) t where rownum<11;
PLSQL是连接的oracle数据库,oracle中没有limit(limit是mysql中的用法)、top(top是sqlserver)关键字,oracle中限制行数条件是用rownum。
扩展资料
对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀。
1、rownum 对于等于某值的查询条件,例如:
SQL> select rownum,id,name from student where rownum=1;
SQL> select rownum,id,name from student where rownum =2;
2、rownum对于大于某值的查询条件,例如
SQL>select * from(select rownum no ,id,name from student) where no>2;
3、rownum对于小于某值的查询条件,rownum对于rownum<n((n>1的自然数)的条件认为是成立的,所以可以找到记录,例如
SQL> select rownum,id,name from student where rownum <3;
4、rownum和排序
SQL> select rownum ,id,name from student order by name;
求解:db2数据库表Tab中无id,且数据量较大,如何指定查询中间十条数据,不是前十条,谢了。
参考技术A select * from 表名 where 条件语句 fetch first 10 only 这是前10行的select * from (select 字段, row_number() over() as rn where *** oder by****) as tmp
where rn> 50 and rn <=100
这是50 至100行追问
DB2 中没有row_number() 函数,麻烦确定后再回答,谢谢。
追答没有row_number() 函数?你是什么版本 ,我的是V 9.5
本回答被提问者采纳以上是关于在PLSQL中怎么能取到表中按ID降序排列的前十条记录???的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Firebase 中按降序排列数据 - Python
求解:db2数据库表Tab中无id,且数据量较大,如何指定查询中间十条数据,不是前十条,谢了。
为啥mssql的OPENQUERY取oracle某表时只返回了一行数据,而在pl/sql中可以查到表中有两行数据,求解答?