PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

PLM之家PLMHome-国产软件践行者

[转载电子书] Oracle 实现分页查询!

[复制链接]

2017-11-3 16:22:57 2885 0

admin 发表于 2017-11-3 16:22:57 |阅读模式

admin 楼主

2017-11-3 16:22:57

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
5 K; c  k& D3 y! ^9 \
1 X, @& ^4 j# z. v8 @
使用oracle数据库查询数据时,每页展示数据有限,大部分情况下需要分页展示。如每页显示10条,一页一页查询出来。下面就来介绍下oracle分页实现% D) Q  z, t$ c8 S0 g
1
; y0 W+ J. f* V; g使用T_BASE_PROVINCE表作为测试演示使用,表字段如下- t9 A4 W/ j- c; q( o% B5 ?7 g
ID        NUMBER(11,0)$ p: {: L1 Q! E. d* r
PROVINCEID        VARCHAR2(6 BYTE)
- L2 _" E5 S3 P+ D) CPROVINCE        VARCHAR2(40 BYTE)
. c0 E2 y' @* |" {) L- J1 T数据可以根据自己的需要,插入一定量的测试数据+ ]  j( t5 B* U
oracle如何实现分页4 i& C$ F) s9 ]+ _
2
5 `0 M5 J9 |/ k查询下总共数据量6 W  Y4 E; t2 E) [- P$ \6 j
select count(*) from T_BASE_PROVINCE;
0 V/ h; A: @" [4 P在分页的时候,一般会显示总页数,需要先查询总数据量得到总页数,总页数=总量/每页显示记录数. o6 D3 b) g" i
oracle如何实现分页
0 R; B8 {+ t7 V3
, f7 u; C" F' f" _3 X: q$ [4 o* ?前面的测试数据初始化完成之后,查询前20条大概有什么样的数据
' r% d- d. v1 Q+ }6 yoracle如何实现分页) Z6 I( U8 o6 |( S/ I1 P
4
8 ]: f1 @- i" S, G" v0 q; \4 C分页语句一:含order by排序,多一层嵌套,因为order by在select之后执行,不在里面写的话可能会出现不是预期的排序结果
: p, h4 Y+ g5 z5 ?0 |* G2 P2 _select * : }" k- W; r' ]5 r# U* H
from (select t.*, rownum rn
; R9 \, D) s$ T8 H        from (select *" k/ M+ l3 ?; m5 f/ r4 ]5 b
                from T_BASE_PROVINCE
% s: l" U' {) ^  \! K               order by id asc) t% N! G& P7 ]# ?
        where rownum <= 20)/ W9 ^" D- H, G
where rn > 10;
" c; @! G0 ?0 K- B5 k" Loracle如何实现分页
: L0 ]' R( r) e: ~, q5
; m; Q1 ]( |/ h  _3 l* }' L分页语句二:如果不需要排序,可以使用如下语句
) ~: D' |, R$ N0 s- k# i/ \& \) p' hselect a1.* , M5 w3 B) ?+ L5 H: r  E
from (select t.*,rownum rn 0 H: @3 p& ?1 V3 S
        from T_BASE_PROVINCE t 0 ]# m% y% t( ~: `3 z8 [
        where rownum <=20) a1 ) {9 g0 @' S0 ]$ F# x  S
where rn >10;5 ^; p6 s, q; h/ Y, b. i- q) N& J
oracle如何实现分页
! }; C) j: A: @/ h9 @6# O0 U" a, R" P0 m6 o. X2 E0 B
分页语句三:between and方式,性能没有上面的高,但写法简单
' z4 Y& ?* O1 W4 k) G) bselect a1.*
7 H: g& f7 P  \& r3 @9 P  f, wfrom (select t.*,rownum rn from T_BASE_PROVINCE t) a1
0 V# n9 f3 n3 \2 A& awhere rn between 11 and 20;
1 v) H4 O3 {$ A8 C( yoracle如何实现分页; L+ Z! k1 f* L
79 c/ Q* u7 M0 ?: B$ _+ t
通用分页格式,page是页码,size是每页显示条数5 v# |5 }) _7 u! |3 H
select * " L3 q' R7 H2 z  V( p
from (select t.*, rownum rn9 ~2 z; [# u- ~# R3 b
        from (select *
9 n* U* @6 q6 ^  I( x2 f# ?                from T_BASE_PROVINCE
2 [$ r- X$ u+ L% q! ?               order by id asc) t( |: m/ q0 j0 X" y
        where rownum <= page*size)
. y. _0 k# ?, X' w0 z# hwhere rn > (page-1)*size;
+ t$ w, M8 ?5 s4 q6 z9 d* [1 a2 r7 s- q7 F, B; p: K, L
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了