zoukankan      html  css  js  c++  java
  • Oracle的思维(4)Oracle的万能分页并不万能2

    很久没有写东西了,因为很久没有碰到问题了。在一次又一次的觉得Oracle的万能分页很爽以外,今天终于碰到了一个问题。

    oracle可以sql语句为参数,拼成万能分页sql
    "select * from ( select row_.*, rownum rownum_ from ( "+sql" ) row_ where
    rownum <= ?) where rownum_ > ?"
    Oracle采用嵌套3层的查询语句结合rownum来实现分页,这在Oracle上是最快的方式,
    如果只是一层或者两层的查询语句的rownum不能支持order by。

    例如:
    sql=select * from admin
    拼成select * from ( select row_.*, rownum rownum_ from ( select * from admin) row_ where
    rownum <= 110) where rownum_ > 100
    没问题

    但今天碰上一条自递归的父子结点表就有问题了。
    dept表结构如下
    deptid     parentid    name
    1            0          直属大队
    2            1          直属大队一中队

    入口sql=
    select
          p.tb_parkingbus_id id,
           p.tb_eventinfo_id,
           p.ajbh,
           t.bustypename,
           r.resultname,
           .....
           dept.dept_name,
           deptoffice.dept_name
      from tb_parkingbus p,  '车辆表
           tb_cfgbustype t,      '车辆类型表
           tb_cfgbusresult r,    '车辆处理结果表
           dept,    '一级部门表
           dept deptoffice  '二级部门表 
     where t.bustypecode = p.bustypecode and r.result = p.result and p.sts='A' and dept.dept_id = p.dept_id
           and dept.parentid= deptoffice.dept_id //二级部门父结点ID=一级部门ID
           and
           p.dept_id ='30000'     
    order by p.ajbh desc

    这条sql本身没有问题。可以正常执行但是代入万能分页sql后就会出现未明确定义的列了

    似乎目前还没有办法
  • 相关阅读:
    LoadRunner-参数化(参数间关联)
    LoadRunner-参数化(添加参数值)
    LoadRunner-参数化(连接数据库)
    LoadRunner-录制脚本中文显示乱码
    LoadRunner-循环
    LoadRunner-关联相关(解决方法二)
    LoadRunner-关联报错(解决方法一)
    LoadRunner-关联问题(栏目列表较多关联不了想要的id)
    LoadRunner-关联(自动关联和手动关联)
    Java基础之处理事件——选项按钮的鼠标监听器(Lottery 2 with mouse listener)
  • 原文地址:https://www.cnblogs.com/tongzhenhua/p/486564.html
Copyright © 2011-2022 走看看