zoukankan      html  css  js  c++  java
  • oracle分页查询

    错误sql分页查询语句:

              select * from users where rownum>=3 rownum <= 4;

              大家以为这样子就可以进行分页查询,但是是行不通的,不信可以试试。

              原因是:

             Oracle机制就是这样的:因为第一条数据行号为1,不符合>=3的条件,所以第一行被去掉,之前的第二行变为新的第一行(即这个行号不是写死的,可以理解为是动态的),如此下去,一直到最后一行,条件始终没法满足,所以就一条数据也查不出来。

             所以,我们先查在表里面虚拟存在的行号,然后再从这些行号进行筛选数据。sql语句如下:  

             select * fromselect rownum rn,u.* from users u) ua where ua.rn between 1 and 2;

             上面的sql语句是显示第1条---第2条的数据,

             有的人就会问,能不能使用 >=  <=来表示between ...and ...

             答案是:>=不能用,但是<=是可以的。别问我为什么,用就行

  • 相关阅读:
    7-4
    7-3
    第五章例5-2
    第五章例5-1
    第四章例4-12
    第四章例4-11
    第四章例4-10
    第四章例4-9
    第四章例4-8
    第四章例4-7
  • 原文地址:https://www.cnblogs.com/qq1141100952com/p/11956299.html
Copyright © 2011-2022 走看看