MySQL(7):排序、分页、完整select语句

    1.排序

    为了方便查看数据,可以对数据进行排序。

语法:
select * from 表名
order by 列1 asc|desc,列2 asc|desc,...

    将行数据按照列1进行排序,如果某些行列1的值相同时,则按照列2排序,以此类推;默认按照列值从小到大排列asc从小到大排列,即升序;desc从大到小排序,即降序。

查询未删除男生学生信息,按学号降序
select * from students
where gender=1 and isdelete=0
order by id desc;

查询未删除科目信息,按名称升序
select * from subject
where isdelete=0
order by stitle;


    2.分页

    当数据量过大时,在一页中查看数据是一件非常麻烦的事情

语法
select * from 表名 limit start,count

    从start开始,获取count条数据;

    start索引从0开始。这个索引与id无关,是系统内部自动生成的,表示数据行在这个数据表中的位置。

每页显示m条数据,当前显示第n页
求第n页的数据
select * from students
where isdelete=0
limit (n-1)*m,m

    3.完整的select语句
select distinct *
from 表名
where ....
group by ... having ...
order by ...
limit star,count

    执行顺序为:

from 表名
where ....
group by ...
select distinct *
having ...
order by ...
limit star,count
实际使用中,只是语句中某些部分的组合,而不是全部

原文地址:https://www.cnblogs.com/wangchongzhangdan/p/9409609.html