前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL ORDER BY(排序) 语句

MySQL ORDER BY(排序) 语句

作者头像
用户10358987
发布2024-04-23 19:50:44
1320
发布2024-04-23 19:50:44
举报
文章被收录于专栏:java

昨天介绍了 MySQL 数据库 UNION 操作符的使用,今天主要讲解下 ORDER BY(排序)语句。

我们知道从 MySQL 表中使用 SELECT 语句来读取数据。如果需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪种方式来进行排序,再返回搜索结果。

  • MySQL ORDER BY(排序) 语句可以按照一个或多个列的值进行升序(ASC)或降序(DESC)排序。

语法

老规矩,先介绍一下语法。以下是 SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:

代码语言:javascript
复制
SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], ...;
参数说明
  • column1, column2, … 是你要选择的列的名称,如果使用 * 表示选择所有列。
  • table_name 是你要从中查询数据的表的名称。
  • ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], … 是用于指定排序顺序的子句。ASC 表示升序(默认),DESC 表示降序。
更多说明
  • 你可以使用任何字段来作为排序的条件,从而返回排序后的查询结果。
  • 你可以设定多个字段来排序。
  • 你可以使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列。
  • 你可以添加 WHERE…LIKE 子句来设置条件。

参数介绍完成,接下来通过一些实例来详细介绍下该如何使用。

实例01

代码语言:javascript
复制
-- 2024.01.22 查询登录日志
SELECT * FROM nm_login_log ORDER BY create_date ASC;

-- 解释:单列排序(查询登录日志表中的全部数据,并按“登录时间”升序 ASC 排序)。
在这里插入图片描述
在这里插入图片描述

实例02

代码语言:javascript
复制
-- 2024.01.22 查询登录日志
SELECT * FROM nm_login_log ORDER BY create_code ASC,create_date DESC;

-- 解释:多列排序(查询登录日志表中的全部数据,并先按“登录账号”升序 ASC 排序,然后在相同“登录账号”中按“登录时间”降序 DESC 排序)。
在这里插入图片描述
在这里插入图片描述

实例03

代码语言:javascript
复制
-- 2024.01.22 查询登录日志
SELECT * FROM nm_login_log ORDER BY 8 DESC,10 ASC;

-- 解释:使用数字表示列的位置(查询登录日志表中的全部数据,并按第8列(create_code)降序 DESC 排序,然后按第10列(create_date)升序 ASC 排序)。
在这里插入图片描述
在这里插入图片描述

实例04

代码语言:javascript
复制
-- 2024.01.22 查询价格表
SELECT id,trade_name,price,discount,price * discount AS discounted_price FROM nm_price ORDER BY discounted_price DESC;

-- 解释:使用表达式排序(查询价格表中的“商品名称”和根据“折扣率”计算的折扣后价格,并按折扣后价格降序 DESC 排序)。
在这里插入图片描述
在这里插入图片描述

实例05

代码语言:javascript
复制
-- 2024.01.22 查询价格表
SELECT id,trade_name,price,discount FROM nm_price ORDER BY price DESC NULLS LAST;

-- 解释:使用 NULLS FIRST 或 NULLS LAST 处理 NULL 值(查询价格表中的“商品名称”和“价格”,并按“价格”降序 DESC 排序,将 NULL 值排在最后)。
在这里插入图片描述
在这里插入图片描述

ORDER BY 子句是一个强大的工具,可以根据不同的业务需求对查询结果进行排序。在实际应用中,注意选择适当的列和排序顺序,以获得符合期望的排序效果。

以上内容即为 MySQL 数据库使用 ORDER BY 进行排序的简单讲解,下期再见。 我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=howee797dqyd

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 语法
    • 参数说明
      • 更多说明
      相关产品与服务
      云数据库 MySQL
      腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档