排序

排序    ORDER  BY

ASC:升序,默认的情况是升序

DESC: 降序

1.单列排序

SELECT * FROM  表名 ORDER BY  列  (ASC | DESC);

2.添加条件根据查询结果排序

SELECT * FROM   表名 WHERE  条件  ORDER   BY  列  (ASC | DESC);

3.多列排序

SELECT * FROM   表名  WHERE  条件  ORDER   BY  列  (ASC | DESC),列   (ASC | DESC);

4.如果你要排序的列是中文,我们先要将排序的列指明为GBK编码,然后在排序

SELECT  *   FROM  表名   WHERE 条件  ORDER   BY  convert(name   USING  gbk);

查询出性别为1的学生并根据年龄进行排序升序

SELECT * FROM studentinfo WHERE gender=1 ORDER BY age;

查询出性别为0的学生并根据年龄进行排序降序

SELECT * FROM studentinfo WHERE gender=0 ORDER BY age DESC;

注意:

在多个列上降序排序 如果想在多个列上进行降序排序,必须对每个列指定DESC关键字与和ASC(ASCENDING)关键字

默认按照列值从小到大排列(asc)asc从小到大排列,即升序     desc从大到小排序,即降序

多列排序时将行数据按照列1进行排序,如果某些行列1的值相同时,则按照列2排序,以此类推


限定查询

1.如果LIMIT 后面只跟了一个数字,表示限制返回多少条,并且从第一条开始。

SELECT * FROM studentinfo LIMIT 6; => SELECT * FROM studentinfo LIMIT 0,6;

2.如果LIMIT 后面只跟了两个数字,第一个数字表示偏移量(不包含当前数字对应的这一行),后一个数字表示限制返回多少条。

SELECT * FROM studentinfo LIMIT 6,6;


我们如何去实现一个分页功能,输入对应的页码m,每一页返回20条数据

SELECT * FROM studentinfo LIMIT (m-1)*20,20

取年龄最大的

SELECT * FROM studentinfo ORDER BY age DESC LIMIT 1;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容