Oracle分页查询SQL实现
2024-09-01 00:02:12
首先看SQL 怎么写
select *
from
(
select a.*,ROWNUM rn
from (
最底层查询语句
) a
where ROWNUM <= #{endCol}
)
where rn > #{startCol}
注意:Mybatis中 < 是小于号 >是大于号
当然 我们还需要 select count(*) 最底层查询语句来得到结果集的总数。需要注意的是,在底层查询语句中,一定要加order by语法进行结果排序,分页会毫无意义。序然后再换算出 endCol 和 startCol
换算代码如下:
//int totalRecord= 总条数;
//计算分页
int intPS=Integer.parseInt(pageSize);
int intPN= Integer.parseInt(pageNo);
int intStartCol= intPS*(intPN-1)+1;
int intEndCol= intPS*intPN-1+1;
String startCol= String.valueOf(intStartCol);
String endCol=String.valueOf(intEndCol); int totalPageNo=totalRecord%intPS>0?totalRecord/intPS+1:totalRecord/intPS;
//在参数字典中加入分页的起始和结束条目号
paramsMap.put("startCol",startCol);
paramsMap.put("endCol", endCol);
最新文章
- 从E.E到S.E
- Hiberbate
- JavaScript 命名规则
- WCF开发指南之构建服务
- python用法笔记(数组(list、touple、dict)、字符串)
- 2013山东省“浪潮杯”省赛 A.Rescue The Princess
- springMVC数据封装成POJO
- POJ2446 二分图最大匹配
- A类型物料必须为装配拉式,供应子库为B仓
- 常见的Java面试题整理
- C#数据库连接操作大全
- call和apply;this;闭包
- hibernate操纵数据库常用方法 及 hibernate对象的三种状态
- 『计算机视觉』Mask-RCNN_推断网络终篇:使用detect方法进行推断
- Apache提供的dbUtils
- [JSOI2015]最小表示
- SQL Server 游标运用:查看数据库所有表大小信息
- 如何验证一个地址可否使用—— MmIsAddressValid函数分析
- Selenium2学习(二)-- 操作浏览器基本方法
- swift计算label动态宽度和高度
热门文章
- NLPIR.user Not valid license or your license expired! Please feel free to contact pipy_zhang@msn.com
- Ajax and JSON
- [C#学习]在多线程中如何调用Winform[转]
- jquery技巧(持续更新。。)
- adb找不到设备
- WPF之 XAML集合项简单演示
- python 读入
- C# mvc 验证码3
- www.nygwkt.com
- 试试Navicat和Axere RP Pro吧