oracle数据库查询前几条数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库查询前几条数据相关的知识,希望对你有一定的参考价值。

参考技术A

选取列表的前三行:

select * from 表A where rownum <= 3;

Oracle查询前几条数据的方法

由于Oracle不支持select top 语句,所以在Oracle中经常是用order by 跟rownum的组合来实现select top n的查询。简单地说,实现方法如下所示:select 列名1 ...列名n from(select 列名1 ...列名nfrom 表名 order by 列名1)where rownum <=N(抽出记录数)order by rownum asc如:select id,name from (select id,name from student order by name) where rownum<=10 order by rownum asc按姓名排序取出前十条数据附:取100-150条数据的方法1.最佳选择:利用分析函数row_number() over ( partition by col1 order by col2 )比如想取出100-150条记录,按照tname排序select tname,tabtype from (select tname,tabtype,row_number() over ( order by tname ) rn from tab) where rn between 100 and 150;2. 使用rownum 虚列select tname,tabtype from (select tname,tabtype,rownum rn from tab 参考技术A 由于Oracle不支持select top 语句,所以在Oracle中经常是用order by 跟rownum
的组合来实现select top n的查询。
简单地说,实现方法如下所示:
select 列名1 ...列名n from(select 列名1 ...列名n
from 表名 order by 列名1)where rownum <=N(抽出记录数)
order by rownum asc
如:select id,name from (select id,name from student order by name) where rownum<=10 order by rownum asc
按姓名排序取出前十条数据
附:取100-150条数据的方法1.
最佳选择:利用分析函数
row_number() over ( partition by col1 order by col2 )比如想取出100-150条记录,按照tname排序
select tname,tabtype from (
select tname,tabtype,row_number() over ( order by tname ) rn from tab
) where rn between 100 and 150;
2. 使用rownum 虚列
select tname,tabtype from (
select tname,tabtype,rownum rn from tab

以上是关于oracle数据库查询前几条数据的主要内容,如果未能解决你的问题,请参考以下文章

Oracle查询前几条数据的方法

Oracle查询前几条数据的方法

oracle取前几条数据语句

Oracle 某字段值相同的取前几条数据

oracle开展分组后,取出每组的前几条数据

Oracle 查询前10%的数据