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 2847 0

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

admin 楼主

2017-11-3 16:22:57

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

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

x

( S- w4 h* J8 }" X; K2 `4 h
/ {* E8 H" q) S" a使用oracle数据库查询数据时,每页展示数据有限,大部分情况下需要分页展示。如每页显示10条,一页一页查询出来。下面就来介绍下oracle分页实现
0 }7 V9 }9 V5 k" k1' ~6 `! \3 e9 O0 A- L2 D7 ~
使用T_BASE_PROVINCE表作为测试演示使用,表字段如下0 p1 v) f5 u% q/ `- N$ ?
ID        NUMBER(11,0)3 Q+ V; q: d4 e4 m
PROVINCEID        VARCHAR2(6 BYTE)
. Y  p: X6 `: bPROVINCE        VARCHAR2(40 BYTE)
# g  X# T$ D( Z' {" n- @$ H8 v数据可以根据自己的需要,插入一定量的测试数据
, c8 p; [5 V/ M) O$ i' Ioracle如何实现分页0 C1 n( C% e: ^' B. C
28 c0 v; u: p; B9 B& n* m
查询下总共数据量' K3 G2 |3 ?, Q; Y
select count(*) from T_BASE_PROVINCE;
: E/ }, i% h3 y( m$ E3 z- L2 E在分页的时候,一般会显示总页数,需要先查询总数据量得到总页数,总页数=总量/每页显示记录数
5 s1 c2 X" Z# woracle如何实现分页9 _- {" U$ K7 [4 x9 d6 r
3% S  G  Y; ~& U0 F
前面的测试数据初始化完成之后,查询前20条大概有什么样的数据$ m4 b# Y0 k" W) ?4 S( U" O$ u
oracle如何实现分页+ \; I3 l: M. C- N) u3 s3 D
4! ~' D0 c9 W* l! i
分页语句一:含order by排序,多一层嵌套,因为order by在select之后执行,不在里面写的话可能会出现不是预期的排序结果
+ L1 K, B" @* K9 b7 @' Yselect *
! p% l  o: W" A% h& h$ b9 {from (select t.*, rownum rn
* V# l' y1 {; W7 `        from (select *
/ v& I7 N' g8 _) W9 G2 m7 g* R                from T_BASE_PROVINCE
& B5 \5 O" W- g" n/ c               order by id asc) t
- J8 Y% e0 A. {* f/ d1 E4 }        where rownum <= 20)
/ P4 ^. {; g$ M* o  q; twhere rn > 10;% k" l/ D7 \6 v  Y* X+ i
oracle如何实现分页% o: M# Z" f' o" Q% d
5) C5 y3 W3 n: w1 h7 L# Z/ h
分页语句二:如果不需要排序,可以使用如下语句0 b- X' y5 g4 P/ j
select a1.*
! f) R, v$ o+ w6 {from (select t.*,rownum rn 1 q$ F0 X$ v0 P+ v6 \# ^0 q. u% P
        from T_BASE_PROVINCE t
! L; g7 i: S% e, L- B* h        where rownum <=20) a1 ) ?) Y% N$ Z2 S- p0 |. V+ `* R" X: K
where rn >10;
3 _7 J8 g- Z+ Koracle如何实现分页
8 K, |3 m- W  l$ S6. F% G2 q7 u3 `. J7 q# U, l0 H
分页语句三:between and方式,性能没有上面的高,但写法简单
* s% E5 k4 @* V8 h4 X/ u, Qselect a1.*
* {, K) V$ O, z& p0 D; m/ m- t2 cfrom (select t.*,rownum rn from T_BASE_PROVINCE t) a1
& }( z2 P6 r' E( p  X0 [where rn between 11 and 20;
; D$ M9 Z8 a' ], v0 ~% ~* ?! Noracle如何实现分页6 R; B3 z- i. v6 J2 P" {
7" s. M6 l0 ]( J1 R. A& h
通用分页格式,page是页码,size是每页显示条数
& ?  |  j8 D; B$ o: p: Z' |select * - Z1 H8 v& U( w" e6 g" R
from (select t.*, rownum rn+ Y. C# o; X- O1 s# J4 \* c
        from (select *
; D2 W! m. _/ D# Z7 L                from T_BASE_PROVINCE+ J$ [' ]% B) J* ^  o
               order by id asc) t
& ~3 P% F- H% a% Y        where rownum <= page*size)
( h  K: F0 I; o' Bwhere rn > (page-1)*size;
7 C9 b9 H! t+ U% h* ]; p$ N" R6 m! F' \1 f
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了