1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

以下的文章主要介绍的是如何在Oracle实现SELECT TOP N的实际操作方法,我前两天在相关网站看见在Oracle实现SELECT TOP N的实际操作的相关资料,觉得挺好,就拿出来供大家分享。

1.在Oracle实现SELECT TOP N

由于Oracle不支持SELECT TOP语句,所以在Oracle中经常是用ORDER BY跟ROWNUM的组合来Oracle实现SELECT TOP N的查询。

简单地说,实现方法如下所示:

SELECT 列名1...列名n FROM

(SELECT 列名1...列名n FROM 表名 ORDER BY 列名1...列名n)

WHERE ROWNUM <= N(抽出记录数)

ORDER BY ROWNUM ASC

下面举个例子简单说明一下。

顾客表customer(id,name)有如下数据:

ID NAME

01 first

02 Second

03 third

04 forth

05 fifth

06 sixth

07 seventh

08 eighth

09 ninth

10 tenth

11 last

Oracle实现SELECT TOP N中我们需要按NAME的字母顺抽出前三个顾客的SQL语句如下所示:

SELECT*FROM 
(SELECT*FROMCUSTOMERORDERBYNAME) 
WHEREROWNUM<=3 
ORDERBYROWNUMASC 

输出结果为:

IDNAME 
08eighth 
05fifth 
01first 

本文来源:1818IP

本文地址:https://www.1818ip.com/post/10961.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。