基础—SQL—DQL(数据查询语言)分页查询

一、引言

上一篇博客学习了排序查询,这次来讲查询的最后一个部分:分页查询。

涉及到的关键字是:LIMIT 。

二、DQL---分页查询

对于分页,不管以后做的是传统的管理系统还是做互联网的项目,基本上都会遇到分页查询的操作。

1、语法
SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录数;

注意:

1、起始索引从0开始,起始索引 = (查询页码-1) * 每页显示记录数。

2、分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是 LIMIT

3、如果查询的是第一页数据,起始索引是从0开始,是可以省略的,直接简写为 limit 10。

三、案例

0、emp 表的初始数据
1、查询第1页员工数据,每页展示10条记录 (注意 LIMIT 后面跟着有两个参数)
sql 复制代码
SELECT * FROM emp LIMIT 0,10;
2、因为我们查询的是第一页,起始索引从0开始,所以可以简写成:LIMIT 10。
sql 复制代码
SELECT * FROM emp LIMIT 10;
3、查询第2页员工数据,每页展示10条记录

这里注意上面的公式:起始索引 = (查询页码-1) * 每页显示记录数

则:起始索引 = (2-1)*10 = 10。

sql 复制代码
SELECT * FROM emp LIMIT 10,10;

结果只返回了6条数据。因为我们这张表总共只有16张数据,第一页有10条数据,第二页就只有6个数据了。

大家一定知道,分页查询对于不同的数据库,有不同的实现。MySQL用的就是 LIMIT ,这篇博客就讲解学习到这里了。

相关推荐
赵八斤14 小时前
java 项目中配置多个数据源
java·开发语言·数据库
小冷coding14 小时前
【Java】以 Java + Redis + MySQL 为技术栈,模拟电商商品详情的读写场景,Cache Aside+ 延迟双删 方案
java·redis·mysql
松涛和鸣14 小时前
59、 IMX6ULL按键驱动开发:轮询到中断的实现
linux·服务器·c语言·arm开发·数据库·驱动开发
XT462514 小时前
创建唯一索引但存在NULL
数据库
扑火的小飞蛾14 小时前
【Oracle Database 分区表】之新特性_18c(三)
数据库·oracle
九章-14 小时前
集中式数据库 vs 分布式数据库:2026 最新对比,选哪个更合适?
数据库·分布式·集中式
softshow102615 小时前
Redis 分布式锁必避问题及解决方案
数据库·redis·分布式
韩立学长15 小时前
【开题答辩实录分享】以《足球球员数据分析系统开题报告》为例进行选题答辩实录分享
java·数据库·mysql
Gauss松鼠会15 小时前
【openGauss】openGauss 如何进行数据库例行维护
数据库·sql·database·opengauss
小-黯15 小时前
QT编译MySQL驱动教程(Windows/Linux)
windows·qt·mysql