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

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

相关推荐
Cx330❀6 小时前
【MySQL基础】一文吃透“表的约束”:从 Null/Default 到主外键的终极安全法则
linux·服务器·数据库·c++·mysql·安全
c238566 小时前
第二篇:《测试指挥官:可视化单题自测框架(含 assert 实操)》
java·数据库·c++·算法·安全性测试
我科绝伦(Huanhuan Zhou)6 小时前
MySQL极端场景数据丢失防护:从Crash-Safe到异地备份
数据库·mysql
辞旧 lekkk6 小时前
【Redis初阶】常见数据类型
开发语言·数据库·c++·redis·学习·缓存·bootstrap
明志数科7 小时前
人形机器人格斗场景下的技术挑战:动力学控制、感知融合与实时决策
网络·数据库
酉鬼女又兒7 小时前
零基础入门 DeepSeek V4 Pro API 开发:从环境搭建、消息格式规范到翻译函数实战、少样本提示、多轮对话聊天机器人与常见报错全流程详解指南
大数据·网络·数据库·人工智能·macos·机器人·github
笨蛋不要掉眼泪7 小时前
MySQL架构揭秘:MVCC解决读一致性问题
数据库·mysql·架构
城事漫游Molly7 小时前
科研数据可视化的5步AI工作流:从原始数据到发表级图表
人工智能·信息可视化·数据分析·prompt·ai for science·科研数据绘图·博士生必读
Navicat中国7 小时前
开发者入门:无服务器数据库
数据库·云原生·serverless·navicat
whn19779 小时前
如何避免以root用户执行达梦
数据库