最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
详述 DB2 分页查询及 Java 实现的示例
时间:2022-06-29 10:15:55 编辑:袖梨 来源:一聚教程网
博主说:有时候,我们需要对数据库中现有的数据进行大量处理操作(例如表中的某个字段需要全部更新等),如果直接使用select * from tableName很容易出现问题,因此我们可以选择分页查询,批量处理数据。
DB2
- startNum:起始数
- endNum:结尾数
SQL 语句
SELECT * FROM ( SELECT B.*, ROWNUMBER() OVER() AS TN FROM ( SELECT * FROM 表名 ) AS B ) AS A WHERE A.TN BETWEEN startNum AND endNum;
如上所示,此即为 DB2 的分页查询语句。
Mapper
Java
/** * Dao 层代码 */ @Repository("storeEntityDao") public interface StoreEntityDao { Listquery4encrypt(Map paramMap); } /** * Service 层接口代码 */ public interface StoreEntityService { public void query4encrypt(); } /** * Service 层实现代码 */ @Service("storeEntityService") public interface StoreEntityServiceImpl implements StoreEntityService { @Override public void query4encrypt() { boolean flag = true; Long startNum = 0L; Long endNum = 0L; Map paramMap = new HashMap (); while (flag) { endNum = startNum + 100; paramMap.put("startNum", startNum); paramMap.put("endNum", endNum); List storeEntityList = StoreEntityDao.query4encrypt(paramMap); if (storeEntityList != null && storeEntityList.size() > 0) { // 遍历加密数据 for (StoreEntity storeEntity : storeEntityList) { // 加密及持久化处理 } } if (storeEntityList != null && storeEntityList.size() >= 100) { startNum = endNum++; } else { flag = false; } } } }
相关文章
- 基于Solana的Solsniper将在运营3.5年后关闭NFT市场 06-15
- 《潜水员戴夫》石纹电鳐抓捕如何 06-15
- 《差不多高手》建筑玩法详细介绍 06-15
- 《弹壳特攻队》第40关打法配置指南 06-15
- 《幻世与冒险》快速升级如何 06-15
- 《航海王壮志雄心》音效质量设置哪些方法效果更好 06-15