【SQL】Oracle分页查询的三种方法
2024-10-19 11:49:43
【SQL】Oracle分页查询的三种方法
采用伪列 rownum
查询前10条记录
1
2
3
4
5
6
7
8
9
10
11
|
[sql] select * from t_user t where ROWNUM <10; 按照学生ID排名,抓取前三条记录 [java] SELECT * FROM ( SELECT id,realname FROM T_USER ORDER BY id asc ) WHERE ROWNUM <=3 分页SQL写法,从第10条记录开始,提取10条记录。 [java] SELECT * FROM ( SELECT ROWNUM rn,id,realname FROM ( SELECT id,realname FROM T_USER) WHERE ROWNUM<=20) t2 WHERE T2.rn >=10; 按照学生ID排名,从第10条记录开始,提取10条记录。 [sql] SELECT * FROM ( SELECT ROWNUM rn,id,realname FROM ( SELECT id,realname FROM T_USER ORDER BY id asc ) WHERE ROWNUM<=20) t2 WHERE T2.rn >=10; |
【注】
1.
1
|
where rownum>1 |
不能抓取到记录。
2.
1
|
where rownum between 2 and 10 |
也不能抓取到记录。
运用分析函数
用分析函数row_number()over(ORDER BY 字段)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
按照学生ID排名,抓取前三条记录 [sql] SELECT * FROM ( SELECT id,realname,row_number()over( ORDER BY id asc ) rn FROM T_USER) WHERE rn <=3 按照学生ID排名,从第10条记录开始,提取10条记录。 [sql] SELECT * FROM ( SELECT id,realname,row_number()over( ORDER BY id asc ) rn FROM T_USER) WHERE rn BETWEEN 10 AND 20 运用minus方法 从第10条记录开始,提取10条记录。 [java] SELECT * FROM T_USER WHERE ROWNUM<20 MINUS SELECT * FROM T_USER WHERE ROWNUM<10; 按ID排序后,从第10条记录开始,提取10条记录。 [sql] ( SELECT * FROM ( SELECT * FROM T_USER ORDER BY id asc ) WHERE ROWNUM<20) MINUS( SELECT * FROM ( SELECT * FROM T_USER ORDER BY id asc ) WHERE ROWNUM<10); |
sql = " SELECT * FROM ( SELECT A.*,rownum rn FROM ( SELECT * FROM task ) A WHERE rownum <=" + (pageIndex) * pageSize + " ) WHERE rn>" + (pageIndex - 1) * pageSize + " ORDER BY ADDTIME DESC,OBJECTID DESC";
最新文章
- 52. 不用+、-、&#215;、&#247;做加法[add two numbers without arithmetic]
- myBaties 和 mysql开发中遇到的问题
- margin属性
- 下载和使用 Open XML PowerTools
- Android 开源框架ActionBarSherlock初探
- myeclipse中java文件头注释格式设置
- jQuery使用记录
- 如何管理Session(防止恶意共享账号)——理论篇
- 探索Visual Studio生成的.vs文件夹内部结构和作用
- WPF常用布局介绍
- oracle 12c centos 7 安装配置
- Innodb 状态的部分解释
- 「TJOI2015」旅游 解题报告
- FastAdmin笔记~
- centos7 下安装Docker CE
- 软件工程驻足篇章:第十七周和BugPhobia团队漫长的道别
- <;转>;jmeter(三)SOAP/XML-RPC Request
- JS脚本获取开发者后台所有Device
- 复制控件出错--提示XX控件不存在
- Win7网络修复,winsock/tcpip
热门文章
- Android4.4访问外部存储
- html5快速入门(四)—— JavaScript
- AES 加密工具类
- 初识java之变量、数据类型和运算符(一)
- Android Studio 导入项目 出现安装Error:Cause: failed to find target with hash string &#39;android-23&#39; 等错误
- 我对uml类图关系的理解
- expdp 报The value (30) of MAXTRANS parameter ignored错误的原因诊断
- web.xml is missing and <;failOnMissingWebXml>; is set to true 错误解决办法
- java实现文件变化监控
- 关于PB调用Microsoft Web Browser控件的一些问题