解决oracle分页查询中排序与效率问题

解决oracle分页查询中排序与效率问题

ID:6631258

大小:28.00 KB

页数:5页

时间:2018-01-20

解决oracle分页查询中排序与效率问题_第1页
解决oracle分页查询中排序与效率问题_第2页
解决oracle分页查询中排序与效率问题_第3页
解决oracle分页查询中排序与效率问题_第4页
解决oracle分页查询中排序与效率问题_第5页
资源描述:

《解决oracle分页查询中排序与效率问题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、解决Oracle分页查询中排序与效率问题 原始未分页查询Sql代码如下: select ROWNUM rn, t.id ID, o.name YYB,u.name XM, t.MC from tZDYSX   t,tuser u,lborganization o where t.cjr=u.id and u.orgid=o.orgcode and t.gx = 1   order by ID    结果如下:RN   ID     YYB       XM    MC------------------------------------

2、-------------3   49 某证券总部    管理员测试4   96 某证券总部    管理员持有上港10000股以上5  102某证券总部    管理员十年规划14  105某证券总部    管理员开发渠道为上海11  106某证券总部    管理员万科A12  107某证券总部    管理员1113  108某证券总部    管理员今天过生日的客户2   109某证券总部    管理员客户状态正常6  110某证券总部    管理员无交易7  111某证券总部    管理员OA8  112某证券总部    管理员幸运客户9

3、  113某证券总部    管理员风险型10  114某证券总部    管理员tst22  115白沙网上交易  安昌彪安客户正常1  118某证券总部    管理员21318  119某证券总部    管理员客户号包含100817  120某证券总部    管理员aaa19  123某证券总部    管理员ssssssss20  124某证券总部    管理员www21  126某证券总部    管理员12312315  127某证券总部    管理员121216  128某证券总部    管理员aaaaaa22rowsselected

4、最初我使用如下Sql代码查询:  select * from (select ROWNUM rn, t.id ID, o.name YYB,u.name XM, t.MC    from tZDYSX t,tuser u,lborganization o where t.cjr=u.id and u.orgid=o.orgcode and    t.gx = 1 order by t.ID )Where rn>10 and rn<=20;    这种方法能成功分页,结果如下:RN   ID       YYB       XM     M

5、C----------------------------------------------14  105某证券总部    管理员开发渠道为上海11  106某证券总部    管理员万科A12  107某证券总部    管理员1113  108某证券总部    管理员今天过生日的客户18  119某证券总部    管理员客户号包含100817  120某证券总部    管理员aaa19  123某证券总部    管理员ssssssss20  124某证券总部    管理员www15  127某证券总部    管理员121216  128

6、某证券总部    管理员aaaaaa10rowsselected  从结果看来,有个问题:此语句Sql代码  orderbyCJSJDESC 被执行,但是是在分后的第11到20条记录的结果集中再进行排序,而不是先排序后分页。(本来希望显示ID为112到126,结果变为105到128)  后来变为以下Sql代码查询: SELECT *    FROM(    SELECT ROWNUM RN,TA.*    FROM(   select t.id ID, o.name YYB,u.name XM, t.MC   from tZDYSX t,

7、tuser u,lborganization o    where t.cjr=u.id and u.orgid=o.orgcode and t.gx = 1 order by t.ID   )TA WHERE ROWNUM <= 20   )WHERE RN > 10  SELECT * FROM( SELECT ROWNUM RN,TA.* FROM(select t.id ID, o.name YYB,u.name XM, t.MCfrom tZDYSX t,tuser u,lborganization o where t.cjr=

8、u.id and u.orgid=o.orgcode and t.gx = 1 order by t.ID)TA WHERE ROWNUM <= 20)WHERE RN > 10结果如下:RN

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。