自定义排序顺序
要按部门排序此表 Employee,你将使用 ORDER BY Department。但是,如果你想要一个不按字母顺序排列的其他排序顺序,则必须将 Department 值映射到正确排序的不同值; 这可以使用 CASE 表达式完成:
| 名称 | 部门 |
|---|---|
| 哈桑 | 它 |
| 优素福 | HR |
| 希拉里 | HR |
| 乔 | 它 |
| 快活 | HR |
| 肯 | 会计 |
SELECT *
FROM Employee
ORDER BY CASE Department
WHEN 'HR' THEN 1
WHEN 'Accountant' THEN 2
ELSE 3
END;
| 名称 | 部门 |
|---|---|
| 优素福 | HR |
| 希拉里 | HR |
| 快活 | HR |
| 肯 | 会计 |
| 哈桑 | 它 |
| 乔 | 它 |