【数据库学习】五 排序查询

    xiaoxiao2023-10-07  181

    目录

    语法

    1、按单个字段排序

    2、添加筛选条件再排序 

    3、按表达式排序

    4、按别名排序

    5、按函数排序

    6、按多个字段排序


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

    语法

    select 查询列表

    from 表名

    【where 筛选条件】

    order by 排序列表 【asc|desc 】

    解析:

    将行数据按照排序列表中第一个进行排序,如果某些行的值相同时,则按照列表第二个参数排序,以此类推默认按照列值从小到大排列(asc)asc从小到大排列,即升序desc从大到小排序,即降序

    1、按单个字段排序

    例1:查询员工信息,工资从高到低进行排序。

    SELECT * FROM employees ORDER BY salary DESC ;

    2、添加筛选条件再排序 

     例2:查询部门编号>=90的员工信息,并按入职先后降序。

    SELECT * FROM employees WHERE employee_id >= 90 ORDER BY hiredate ASC ;

    3、按表达式排序

    例1.查询员工的信息和年薪 按年薪降序进行排序。

    SELECT *,salary*12*(1+IFNULL(commission_pct,0)) FROM employees ORDER BY salary*12*(1+IFNULL(commission_pct,0)) DESC;

    4、按别名排序

    例:查询员工的信息和年薪 按年薪降序进行排序【按照别名排序】

    SELECT *,salary*12*(1+IFNULL(commission_pct,0)) 年薪 FROM employees ORDER BY 年薪 ASC;

    5、按函数排序

    例:查询员工名和工资,并且按名字的长度降序。

    SELECT LENGTH(last_name) 字节长度 , last_name ,salary FROM employees ORDER BY LENGTH(last_name) DESC;

    6、按多个字段排序

    例:查询员工信息,要求先按工资降序,再按员工编号升序

    SELECT * FROM employees ORDER BY salary DESC, employee_id ASC ;

    原则是首先按照工资进行排序,如果两个人的工资相同,则按照员工编号进行排序。 

    最新回复(0)