MySQL 还可以存储空的字符串和空值转换为 ENUM。它将空字符串排序在非空字符串之前,将 NULL 排序在空字符串之前。因此排序顺序如下 -
ENUM 值的排序顺序
强> |
1. NULL
td> |
2.空字符串 |
示例
在此示例中,我们有一个表“结果”,其中包含 ENUM 列“等级”。该表包含以下值。
mysql> Select * from Result;
+-----+--------+-------+
| Id | Name | Grade |
+-----+--------+-------+
| 100 | Gaurav | GOOD |
| 101 | Rahul | POOR |
| 102 | Rahul | NULL |
| 103 | Mohan | |
+-----+--------+-------+
4 rows in set (0.00 sec)
登录后复制
现在,使用 ORDER BY 子句后,MySQL 返回排序后的输出。我们可以观察到输出是根据索引号排序的。
mysql> Select * from result order by grade;
+-----+--------+-------+
| Id | Name | Grade |
+-----+--------+-------+
| 102 | Rahul | NULL |
| 103 | Mohan | |
| 101 | Rahul | POOR |
| 100 | Gaurav | GOOD |
+-----+--------+-------+
4 rows in set (0.00 sec)
登录后复制
以上就是MySQL ENUM 值如何排序?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!