排序

作者: 2simple | 来源:发表于2018-08-12 20:24 被阅读0次

    排序    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;

    相关文章

      网友评论

          本文标题:排序

          本文链接:https://www.haomeiwen.com/subject/cqzhbftx.html