Oracle和MySQL的分页查询

一、Oracle的分页查询

此分页语句,以Oracle中EMP表为例,查询第5条到第10条的数据

SELECT
	B.*
FROM
	(
		SELECT
			A.*, ROWNUM rn
		FROM
			emp A
		WHERE
			A.rn <= 10	-- 第一层通过ROWNUM限制最大值
	) B
WHERE
	B.rn >= 5	-- 第二层查询通过rn限制最小值

注意:

  • ROWNUM是伪列,总是从1开始,只能使用<=,而不能使用>=,所以在第二层要给其起个别名,变成逻辑列比较;

二、MySQL的分页查询

此分页语句,以Mysql中EMP表为例,查询第5条到第10条的数据

select * from emp limit 4,10
  1. Mysql的limit用法
  2. 【MySQL】LIMIT以及LIMIT OFFSET 使用方法介绍
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
LIMIT 接受一个或两个数字参数。
参数必须是一个整数常量。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。

你可能感兴趣的:(mysql,oracle,数据库,分页)