• Oracle查询前几条数据的方法


    在Oracle中实现select top N:
    由于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 where rownum <= 150                  

    ) where rn >= 100;

  • 相关阅读:
    php单点登录
    【Docker】docker镜像构建
    【测试经验】网关中间件测试
    【Jmeter】调用Dubbo方法
    【计算机网络】TCP三次握手与四次挥手
    【操作系统】死锁
    【操作系统】线程与进程
    【计算机网络】TCP/IP
    【计算机网络】Http与Https
    【二叉树】二叉树的创建与遍历
  • 原文地址:https://www.cnblogs.com/CandiceW/p/6869140.html
Copyright © 2020-2023  润新知