zoukankan      html  css  js  c++  java
  • Oracle分页

    Oracle数据库跟Mysql在语法上有很多差异。

    Mysql表名重命名可以使用as
    select * from (select * from haha) as new_haha;
    Oracle带着as会出错

    Mysql可以使用limit from,sz实现分页
    Oracle实现分页就很麻烦,有以下三种形式,但是它们的本质都是一样的,即:通过rownum。
    rownum是一个变量,从1开始递增。你不可能不要010,而直接获取1020。

    Mysql的select字段可以不是group字段,Oracle的select字段必须是group字段中的一个。

    --分页查询一
    select * from (select a1.*,rownum rn from (select * from student) a1 where rownum <=5) where rn>=2;
    
    --分页查询二
    select a1.* from (select student.*,rownum rn from student where rownum <=5) a1 where rn >=3;
    
    --分页查询三
    select a1.* from (select student.*,rownum rn from student) a1 where rn between 3 and 5;
    

    需要注意的是,必须要给rownum起一个别名,否则rownum会被oracle进行优化到里面去,导致获得空列表。

  • 相关阅读:
    luogu P3174 毛毛虫
    P3386二分图最大匹配模版
    P4180 严格次小生成树
    差分约束
    高斯消元
    P1306 斐波那契公约数
    极值
    排序
    P1852 [国家集训队]跳跳棋
    高精度模版
  • 原文地址:https://www.cnblogs.com/weiyinfu/p/7492628.html
Copyright © 2011-2022 走看看