数据库分页查询

本文介绍了在Oracle、SQL Server及MySQL数据库中实现分页查询的方法。包括Oracle中使用ROWNUM进行分页的不同方式及其性能对比,SQL Server中通过排除前N条记录来获取特定范围的数据,以及MySQL中利用LIMIT关键字轻松实现分页。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分页语句:

Oracle:

--这种分页查询方式不仅仅是针对单表的简单查询,对于最内层查询是复杂的

--多表联合查询或最内层查询包含排序的情况一样有效

SELECT * FROM ( 

SELECT ROWNUM RN , T.*  FROM 

(SELECT * FROM FTNEMR.PATIENT_VISIT) T WHERE ROWNUM <= 40 ) 

WHERE RN >= 21

ORDER BY PATIENT_ID;

--这种方式比上面的方式要性能要低很多

SELECT * FROM ( 

SELECT ROWNUM RN, T.* FROM 

(SELECT * FROM FTNEMR.PATIENT_VISIT) T ) 

WHERE RN BETWEEN 21 AND 40 

ORDER BY PATIENT_ID


SQL Server:

--查询出第21条至第30条数据 --

SELECT TOP 10 * FROM dbo.HIS_BA1   

WHERE FID NOT IN(SELECT TOP 20 FID FROM dbo.HIS_BA1 ORDER BY FID)


Mysql:

SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值