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

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

相关推荐
CC数分12 分钟前
数据可视化入门:用Python把一堆数字变成一张图
开发语言·python·信息可视化·数据分析
User_芊芊君子23 分钟前
数据库手记:从数据建模到 Spark 对接的实测记录
大数据·数据库·spark
꯭自꯭闭꯭24 分钟前
DM主备集群以及读写分离集群搭建
linux·运维·数据库
吴声子夜歌31 分钟前
HTML——结构化微数据语言简介
前端·数据库·html
\光辉岁月/1 小时前
7.mybatisplus学习-条件构造器、插件、通用枚举、多数据源环境、MybatisX
数据库·oracle
承渊政道1 小时前
云电脑连接异地MySQL:星空组网配置、端口验证与登录排障
数据库·mysql·电脑·星空组网
yexianglunbai1 小时前
Redis 缓存详解:从原理到实战
数据库·redis·缓存
微信开发api1 小时前
基于WTAPI构建社群运营平台:自动拉群与会话承接链路设计
java·大数据·网络·数据库·微信·自动化
天空'之城1 小时前
单片机基础核心知识点汇总(四十六)
数据库·单片机·mongodb