暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL 查询数据时,如何使用排序?

西安川石 2022-09-22
596


每天一个测试技术

只需几分钟

川石信息 带你学点更好的




川石信息|腾讯课堂

免费试学 | 性能测试


mysql数据排序


在查询数据时,如果没有使用排序操作,默认情况下SQL会按数据添加的顺序来排列查询结果。


要对数据进行排序,需要在select语句后边加上order by 以及排序依据。


▲ 按照排序依据排序可以分为:按照列名排序、列的别名排序、列的编号排序。


▲ 按照顺序升降可以分为:升序排列(由小到大)和降序排列(由大到小),升序排列在排序依据后边加ASC(asc可以省略)、降序排列在排序依据后边加DESC(DESC不能省略),也就是默认情况下是按照升序排列的。


▲ 按照列的多少可以分为:单列排序、多列排序。


现有学生表如下图:



按照年龄由小到大对学生进行排序(单列排序)。


按照列名排序


    select * from student order by sage asc;

    左右拉动查看完整代码


    按照列的编号排序


      select * from student order by 4 asc;

      左右拉动查看完整代码


      按照列的别名排序


        select sno 学号,sname 姓名,sage as 年龄,ssex as 性别 from student order by 年龄 asc;

        左右拉动查看完整代码



        先按照性别由男到女排,再按照年龄由大到小排(多列排序)。


          select sno 学号,sname 姓名,sage as 年龄,ssex as 性别 from student order by 性别 desc,年龄 desc;

          左右拉动查看完整代码



          先按照年龄由大到小排列,再按照性别由女到男排列(多列排序)。


          按照列名排序


            select sno 学号,sname 姓名,sage as 年龄,ssex as 性别 from student order by sage desc,ssex asc;

            左右拉动查看完整代码


            按照列的编号排序


              select sno 学号,sname 姓名,sage as 年龄,ssex as 性别 from student order by 3 desc,4 asc;

              左右拉动查看完整代码


              按照列的别名排序


                select sno 学号,sname 姓名,sage as 年龄,ssex as 性别 from student order by 年龄 desc,性别 asc;

                左右拉动查看完整代码



                需要注意按照多列排序时,哪列在前哪列在后排出来结果是完全不同的,所以多列排序一定要注意列的顺序。按照列的别名排序时,必须先给列起别名。




                今天的内容就学习到这里了,每个工作日小编都会更新一个有关测试的小知识,希望大家多多关注我们,一起来学习喔!


                温馨提示:添加老师微信【13691729932】可以获取全套软件测试自学资料!


                 往期回顾 

                性能测试中如何设置并发数?

                性能测试中负载、压力、并发之间的区别


                扫码邀你加入

                软件测试群

                免费软件测试课

                川石课堂


                文章转载自西安川石,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                评论