mysql中的分页

1 数据准备

CREATE TABLE `stuscore` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(255) COLLATE utf8_bin DEFAULT NULL,
  `score` varchar(255) COLLATE utf8_bin DEFAULT NULL,
  `subject` varchar(255) COLLATE utf8_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (1, 'zs', '80', 'english');
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (2, 'zs', '90', 'math');
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (3, 'wu', '70', 'english');
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (4, 'wu', '90', 'math');
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (5, 'xx', '80', 'dl');
INSERT INTO `mysecurity`.`stuscore` (`id`, `name`, `score`, `subject`) VALUES (6, 'zs', '89', 'yuwen');

2 实验

2.1 使用LIMIT进行分页

2.1.1 LIMIT n

单独使用LIMIT n代表获取前n条数据如:

SELECT * FROM stuscore LIMIT 2;

拿取的是stuscore前2条数据。

2.2.2 LIMIT n,m

表示跳过前n个获取m个数据如:

SELECT * FROM stuscore LIMIT 0,2;

分页公式LIMIT (当前页码-1)*页面数据量,页面数据量

2.2 LIMIT m OFFSET n

OFFSET为跳过的数据量,LIMIT为要选区的数据量。
分页公式
LIMIT(每页数据量) OFFSET 为(当前页码-1)*每页数据量。
查询第一页(每页两条数据)

SELECT * FROM stuscore LIMIT 2 OFFSET 0;

查询第二页

-- 第二页LIMIT(每页两条数据) OFFSET 为(当前页码-1)*页大小
SELECT * FROM stuscore LIMIT 2 OFFSET 2;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值