对于一次性查询出的大量记录,不仅不便于阅读查看,还会浪费系统效率。MySQL中提供了一个关键字LIMIT,可以限定记录的数量,也可以指定查询从哪一条记录开始(通常用于分页)。
1.准备
CREATE DATABASE mahaiwuji;USE mahaiwuji;CREATE TABLE stu ( id int(10), name varchar(20), sex int(5), PRIMARY KEY (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO stu VALUES ('1', 'aa', '1');INSERT INTO stu VALUES ('2', 'bb', '1');INSERT INTO stu VALUES ('3', 'cc', '2');INSERT INTO stu VALUES ('4', 'dd', '2');INSERT INTO stu VALUES ('5', 'ee', '1');INSERT INTO stu VALUES ('6', 'ff', '1');INSERT INTO stu VALUES ('7', 'gg', '2');INSERT INTO stu VALUES ('8', 'hh', '2');INSERT INTO stu VALUES ('9', 'ii', '1');INSERT INTO stu VALUES ('10', 'jj', '1');INSERT INTO stu VALUES ('11', 'kk', '2');INSERT INTO stu VALUES ('12', 'll', '2');INSERT INTO stu VALUES ('13', 'mm', '1');INSERT INTO stu VALUES ('14', 'nn', '1');
2.一个参数
当 limit 的参数只有一个的时候,这个参数的含义就是要查询下标小于该参数的数据,通俗可以理解为前几条。
SELECT * FROM stu LIMIT 3;
SELECT * FROM stu LIMIT 5;
3.二个参数
当 limit 的参数为二个的时候,第一个的参数的含义是显示下标从该参数开始的数据,第二个的参数的含义是显示多少条。
SELECT * FROM stu LIMIT 3,5;
SELECT * FROM stu LIMIT 6,3;
-- 当条数不够时,只会显示满足条件的数据SELECT * FROM stu LIMIT 10,5;