MYSQL order by field condition 在平局的情况下

标签 mysql conditional-statements ranking-functions

我有一个这样的mysql表

Brand     Count
TOYOTA     20
HONDA      50
BMW        5
PORSCHE    10
HYUNDAI    10
MAZDA      10

我想根据降序中的 COUNT 列对表进行排序,如果出现平局,我想将 BRAND 列排序为 PORSCHE、BMW、HONDA、TOYOTA、MAZDA、HYUNDAI,因此结果如下所示:

Brand     Count
HONDA      50
TOYOTA     20
PORSCHE    10
BMW        10
HYUNDAI    10
MAZDA      5 

最佳答案

使用FIELD()定制订购

ORDER BY `Count` DESC, 
         FIELD(BRAND, 'PORSCHE', 'BMW', 'HONDA', 'TOYOTA', 'MAZDA', 'HYUNDAI')

关于MYSQL order by field condition 在平局的情况下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26136434/

相关文章:

java - 在 Java 中如何使用对象引用作为 while 循环条件?

sql - 如何在SQL Server 2012中添加行号列

python - 如何从 Tensorflow 排名系统的输出文件中获取分数?

sql - SQL 中的 Row_Number 排名

javascript - 比较 MySQL 条目中的 'closest' 匹配

javascript - 我的 JS 代码适合 '99 Bottles of Beer on the Wall' 歌曲吗?

mysql - SQL JOIN 上的 WHERE 子句

c - 条件操作是什么意思?

mysql - mysql 选择查询的复选框

mysql - 如何使用mysql调用带有输入和输出参数的Entity Framework Core中的存储过程