自定义排序顺序
要按部门排序此表 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 |
肯 | 会计 |
哈桑 | 它 |
乔 | 它 |