oracle rownum分页出现重复数据

oracle rownum分页出现重复数据的情况:

一般情况是分组的字段不唯一导致的

解决办法:

原始sql:(错误的)

复制代码
SELECT *
 FROM (
 SELECT a.*, ROWNUM r
 FROM hospital_inpatient_medication a
 WHERE  TO_CHAR(discharge_date,'YYYY-MM-DD HH24:MI:SS') BETWEEN '2024-01-01 00:00:00' AND '2024-02-01 00:00:00'
 AND  ROWNUM <= 500
 ORDER BY discharge_date asc 
)
WHERE r >= 1

改进:(正确的)

复制代码
select *
from (
select row_.*, rownum rownum_
from ( select * from hospital_inpatient_medication
WHERE TO_CHAR(discharge_date,'YYYY-MM-DD HH24:MI:SS') BETWEEN '2024-02-01 00:00:00' AND '2024-03-01 00:00:00'
order by discharge_date asc, id asc )
row_ where rownum <= 5000) b
where b.rownum_ >=1

思路:就是加个唯一键分组

相关推荐
Irene199112 小时前
Oracle 聚合函数 vs 窗口函数 对比总结(书写顺序与执行顺序示例)
数据库
weixin_3812881812 小时前
HTML5中Noscript标签在脚本禁用环境下的补救
jvm·数据库·python
S1998_1997111609•X12 小时前
k:file/~*…/code/*iOS/an/app-/log in/ext./-system.API/-(NFV)=sdk.
数据库·网络协议·百度·微信·ssh
其实防守也摸鱼12 小时前
网络安全与数据库运维核心知识点总结(附习题)
运维·网络·数据库·笔记·安全·web安全
2401_8371638912 小时前
PHP怎么写API接口_RESTful API基础写法介绍【介绍】
jvm·数据库·python
qq_4135020212 小时前
PHP跨平台部署AI应用_Docker容器化方案【教程】
jvm·数据库·python
倔强的石头10612 小时前
kingbase备份与恢复实战(五)—— PITR时间点恢复:恢复到误操作前一分钟(归档WAL)
数据库·备份与恢复
2401_8323655212 小时前
HTML怎么区分正文与广告_HTML aside与广告位语义【技巧】
jvm·数据库·python
jnrjian12 小时前
SQL太长导致 library cache lock 长期持有 造成系统hang住
数据库·sql
南棱笑笑生12 小时前
20260427给万象奥科的开发板HD-RK3576-PI适配瑞芯微原厂的Android14时增加ll命令
数据库·rockchip