5-在ORACLE中实现SELECT TOP N

前端之家收集整理的这篇文章主要介绍了5-在ORACLE中实现SELECT TOP N前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询 @H_403_2@ @H_403_2@ 简单地说,实现方法如下所示: @H_403_2@ SELECT 列名1...列名n FROM @H_403_2@ (SELECT 列名1...列名n FROM 表名 ORDER BY 列名1...列名n) @H_403_2@ WHERE ROWNUM <= N(抽出记录数) @H_403_2@ ORDER BY ROWNUM ASC @H_403_2@ 下面举个例子简单说明一下。 @H_403_2@顾客表customer(id,name)有如下数据: @H_403_2@ ID NAME @H_403_2@ 01 first @H_403_2@ 02 Second @H_403_2@ 03 third @H_403_2@ 04 forth @H_403_2@ 05 fifth @H_403_2@ 06 sixth @H_403_2@ 07 seventh @H_403_2@ 08 eighth @H_403_2@ 09 ninth @H_403_2@ 10 tenth @H_403_2@ 11 last @H_403_2@ 则按NAME的字母顺抽出前三个顾客的sql语句如下所示: @H_403_2@ SELECT * FROM @H_403_2@ (SELECT * FROM CUSTOMER ORDER BY NAME) @H_403_2@ WHERE ROWNUM <= 3 @H_403_2@ 输出结果为: @H_403_2@ 01 first

猜你在找的Oracle相关文章