Mysql 使用case排序

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Mysql自定义排序使用case进行排序
+关注继续查看

在 MySQL 中,你可以使用 ORDER BY 子句来对结果进行排序。默认情况下,ORDER BY 子句按照升序对字段进行排序。如果你想按照降序排序,你可以使用 DESC 关键字。

除了默认的升序和降序排序,你还可以使用自定义排序顺序。这可以通过使用 CASE 语句来实现。

下面是一个示例,展示如何在 MySQL 中使用自定义排序顺序:

假设你有一个名为 students 的表,其中包含学生的姓名和成绩。你想按照成绩排序,但是你希望首先展示成绩优秀的学生(假设成绩大于等于 80),然后展示表现良好的学生(成绩在 60 到 80 之间),最后展示表现较差的学生(成绩小于 60)。

你可以使用以下查询来实现这个排序:

SELECT name, score
FROM students
ORDER BY 
    CASE
        WHEN score >= 80 THEN 1
        WHEN score >= 60 THEN 2
        ELSE 3
    END,
    score;

在这个查询中,我们首先使用 CASE 语句为每个成绩段分配一个数字值。然后,我们使用 ORDER BY 子句按照这个数字值进行排序,然后按照成绩进行排序。

这将首先按照成绩段进行排序,然后按照成绩在每个成绩段内进行排序。因此,优秀的学生将首先展示,然后是表现良好的学生,最后是表现较差的学生。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
14天前
|
存储 关系型数据库 MySQL
MySQL基础篇(运算符、排序分页、多表查询、函数)-3
MySQL基础篇(运算符、排序分页、多表查询、函数)
20 0
|
14天前
|
SQL 关系型数据库 MySQL
MySQL基础篇(运算符、排序分页、多表查询、函数)-2
MySQL基础篇(运算符、排序分页、多表查询、函数)
12 0
|
14天前
|
SQL 关系型数据库 MySQL
MySQL基础篇(运算符、排序分页、多表查询、函数)-1
MySQL基础篇(运算符、排序分页、多表查询、函数)
13 0
|
21天前
|
关系型数据库 MySQL 测试技术
软件测试|MySQL ORDER BY详解:排序查询的利器
软件测试|MySQL ORDER BY详解:排序查询的利器
180 0
|
21天前
|
关系型数据库 MySQL
解决MySQL需要根据特定顺序排序
在进行业务需求的时候,不会根据排序去选择数据。例如,在导出的时候数据排序是根据编辑时间去排序的,那么他的主键id会打乱。假如: 要导出id为 3 ,1 , 2 ,6 , 5 的数据并且根据此顺序导出。
解决MySQL需要根据特定顺序排序
|
29天前
|
SQL 关系型数据库 MySQL
MySQL 版本号排序
# 1、业务背景 版本检查接口返回版本号排序时出现如下图所示问题 ![请在此添加图片描述](https://developer-private-1258344699.cos.ap-guangzhou.myqcloud.com/column/article/5877188/20231031-262125b3.png?x-cos-security-token=kcWkaWALSQ5t0gKzZRkVwYOOBJMLQ8Raf156e68c75de0329d6cf550fc2caafed2ct0qMmH-Si3jPfLmVc91k0roP8yZ3q-WASMT6cTBs1TsQOj5XI9PYK_A
22 0
MySQL 版本号排序
|
1月前
|
SQL 数据可视化 关系型数据库
【MySql】MySQL排序分页查询数据顺序错乱的原因和解决办法
【MySql】MySQL排序分页查询数据顺序错乱的原因和解决办法
158 0
|
1月前
|
算法 关系型数据库 MySQL
【MySQL系列】Select语句单表查询详解(二)ORDERBY排序
文章目录 一、排序ORDER BY 1.ORDER BY的格式: 2.ORDER BY的作用: 3.ORDER BY的使用: 1️⃣ 按照字段名排序 2️⃣按字段照序号进行排序 3️⃣降序DESC 4️⃣根据多列排序 5️⃣还可以结合搭配函数或者一些查询条件使用。
|
2月前
|
关系型数据库 MySQL
MySql order by 排序
MySql order by 排序
12 0
|
2月前
|
存储 关系型数据库 MySQL
Mysql字符串数字排序
Mysql字符串数字排序
26 0
推荐文章
更多