mysql - MySQL 中按 VARCHAR 值排序

标签 mysql sql-order-by

我有一个包含 2 列的表格

id  status

1   SUBMIT
2   CANCEL
3   UPDATE
4   CANCEL
5   SUBMIT
6   UPDATE

如果我这样做:

select * from table

我可以使用 MySQL 按照我想要的顺序对结果进行排序吗?
ASC 将是取消、提交、更新,而 DESC 则相反。如果我想要不同的顺序(例如提交、取消、更新)怎么办?可能吗?

最佳答案

如果我理解正确,这就是您需要的:

SELECT * FROM `Table` ORDER BY FIELD(status, 'SUBMIT', 'CANCEL', 'UPDATE');

您可以更改列值的顺序以满足您的需求。

这是测试: http://sqlfiddle.com/#!2/d1885/3

关于mysql - MySQL 中按 VARCHAR 值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703741/

相关文章:

MySQL比较两个表并添加缺失值

sql - 简单的SELECT查询问题

mysql - 每位客户当天的倒数第五笔交易

php - 使用变量时无法回显表值

mysql - 使用无符号整数的算术元素(加法)进行 SQL 范围分区 - 它会优化 WHERE 查询吗? (MySQL、PostgreSQL)

mysql - 如何优化从多个表(到一个表)的删除查询?

mysql - 查找匹配和空白的行

postgresql - 如何在 PostgreSQL 中以区分大小写的方式对结果进行排序?

sql-order-by - Django 在 .annotate() 中使用 order_by 并获取相关字段

mysql 精细具体命令类别