MySQL排序查询——按升序、降序、别名、表达式、函数、多个字段排序

本文详细介绍了MySQL的排序查询,包括asc升序、desc降序操作,如何添加筛选条件,按别名、表达式、函数进行排序,以及如何实现按多个字段排序。内容涵盖order by子句的使用方法和特点,提供了丰富的示例演示。
摘要由CSDN通过智能技术生成

排序查询

一、语法:                                   执行顺序
  Select       查询列表                          ③
  from       表                                       ①
【where     筛选条件】                       ②
  order by 排序列表(字段/表达式/函数/别名 )【asc/desc】 ④

PS:【】中的内容表示的是可选的;
    序号① ② ③ ④表示执行顺序.

二、特点:
1.desc 代表降序,asc 代表升序;如果不写,默认是升序
2.order by子句中可以支持单个字段、多个字段、表达式、函数、别名
3.order by子句一般是放在查询语句的最后面,limit子句除外

下面是一些具体的案例演示:

1. asc升序

将所有number按照cust_num进行升序排列
在这里插入图片描述

2. desc降序

将所有id按照cust_id进行降序排列
在这里插入图片描述
注:
      DESC 降序排列,ASC 升序排列,默认情况下,它是按升序排列。
      order by 后面可以跟多个不同的排序字段。
      如果结果中含有NULL 值,默认情况下他们总是出现在查询结果的开头。

3. 添加筛选条件

查询部门编号>=100的manager_id,department_id,salary,hiredate信息,
按入职时间的先后进行排序
在这里插入图片描述

4. 按别名排序

按年薪package的高低显示员工的信息和年薪
在这里插入图片描述
这里为字段 salary *12 *(1+ifnull (commission_pct) ,0) 起别名为 package(年薪)

5. 按表达式排序

按年薪由高到低显示员工的信息和年薪
在这里插入图片描述
也可以用表达式来进行排序查询

6. 按函数排序

按姓名的长度显示员工的姓名和工资
在这里插入图片描述
mysql中 length 是计算字段的长度,一个汉字是算三个字符,一个数字或字母算一个字符

7. 按多个字段排序

查询employee_id,salary,first_name,先按工资升序,再按员工编号降序
在这里插入图片描述

MySQL中,可以使用ORDER BY子句对连接表的结果按别名进行排序。ORDER BY子句可以放在查询语句的最后面,除了LIMIT子句之外。可以使用DESC表示降序排列,ASC表示升序排列,默认情况下是按升序排列。ORDER BY子句可以支持单个字段多个字段表达式函数别名。如果结果中包含NULL值,默认情况下它们会出现在查询结果的开头。下面是一个示例查询语句: SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name ORDER BY alias_name DESC; 在这个示例中,我们使用了别名(alias_name)来表示需要排序字段,使用DESC关键字表示降序排列。你可以根据自己的需求修改查询语句中的表名、字段名、条件和别名来实现你想要的结果。 #### 引用[.reference_title] - *1* *3* [MySQL排序查询——按升序降序别名表达式函数多个字段排序](https://blog.csdn.net/DebbyOctober/article/details/105875938)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [MySQl排序别名](https://blog.csdn.net/YsDou/article/details/121090841)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值