赞
踩
在写代码时我们可能会遇到这样的问题:取出前3条数据;取出第3页的数据,我们可以使用MySQL中的limit函数来完成。limit函数主要用于【获取从某一行开始的前几行数据】。
函数 | 描述 |
---|---|
limit n,m | 从n+1行开始获取前m行数据 |
limit m | 从0行开始获取前m行数据 |
students 表 (id表示主键,name是中文姓名,Ename是英文姓名,score是平均成绩)
id | name | Ename | score |
---|---|---|---|
1 | 李明 | LiMing | 67 |
2 | 张三 | ZhangSan | 74 |
3 | 孙华 | SunHua | 87 |
4 | 刘平 | LiuPing | 56 |
#获取成绩第3、4名的学生姓名(获取倒数第1、2名的学生姓名)
select
name
from students
order by score desc
limit 2,2
#获取成绩第1、2名的学生姓名
select
name
from students
order by score desc
limit 2
创建 students 表的代码
-- ---------------------------- -- Table structure for students -- ---------------------------- DROP TABLE IF EXISTS `students`; CREATE TABLE `students` ( `id` int(11) NOT NULL, `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学生中文姓名', `Ename` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学生英文姓名', `score` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '成绩', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of students -- ---------------------------- INSERT INTO `students` VALUES (1, '李明', 'LiMing', '67'); INSERT INTO `students` VALUES (2, '张三', 'ZhangSan', '74'); INSERT INTO `students` VALUES (3, '孙华', 'SunHua', '87'); INSERT INTO `students` VALUES (4, '刘平', 'LiuPing', '56');
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。