一、排序查询
-
order by 排序
-
升序 ASC
-
降序 DESC
-
1.升序排序
-- 查询参加考试的同学,包含的信息包括学号,姓名,科目名,分数(以分数升序展示)
SELECT s.studentno,studentname,subjectname,studentresult
FROM student s
INNER JOIN result r
ON s.studentno=r.studentno
inner JOIN `subject` sub
on r.subjectno=sub.subjectno
ORDER BY studentresult ASC
2.降序排序
-- 查询参加考试的同学,包含的信息包括学号,姓名,科目名,分数(以分数降序展示)
SELECT s.studentno,studentname,subjectname,studentresult
FROM student s
INNER JOIN result r
ON s.studentno=r.studentno
inner JOIN `subject` sub
on r.subjectno=sub.subjectno
ORDER BY studentresult DESC
二、分页查询
-
limit(起始下标,页面大小) 分页
-
起始下标=(第几页面数-1) *页面大小 pageIndex
-
页面大小 pageSize
-
总页数=总数据条数 / 页面大小 pageCounts
分页的操作必须放在最后
pageSize:页面大小
(n-1)*pageSize:起始值
n:当前页
数据总数/页面大小 = 总页数
语法:limit(查询起始下标,pageSize)
例子
-- 查询参加考试的同学,包含的信息包括学号,姓名,科目名,分数(以分数降序展示)
-- LIMIT 起始下标,页面大小
-- 查询前面六位的同学
SELECT s.studentno,studentname,subjectname,studentresult
FROM student s
INNER JOIN result r
ON s.studentno=r.studentno
inner JOIN `subject` sub
on r.subjectno=sub.subjectno
ORDER BY studentresult DESC
LIMIT 1,2
-- 查询考试成绩前十名的同学(学号,姓名,成绩)
SELECT s.studentno,studentname,studentresult
from student s
INNER JOIN result r
on s.studentno=r.studentno
order by studentresult DESC
LIMIT 0,10
-- 查询考试成绩大于80分,并且排在排在前1名的同学(学号,姓名,成绩)
SELECT s.studentno,studentname,studentresult
from student s
INNER JOIN result r
on s.studentno=r.studentno
WHERE studentresult>80
ORDER BY studentresult DESC
limit 0,1
标签:JOIN,--,查询,studentno,studentresult,subjectno,MySQL,日志,排序
From: https://www.cnblogs.com/yzx-sir/p/17398349.html