订单由Enum Integer字段SQL



i有一个带有dataType Integer的列的UserInfo表,可以包含以下Int值

     Employee -> 0
     FormerEmployee ->1
     Retiree -> 2
     Disabled -> 3
     COBRAParticipant -> 4

我正在编写一个SQL查询,其中用户类型排序现在应如下:

Employee, COBRAParticipant, Disabled,Retiree, Former Employee. 

使用以下订单的子句没有给出预期的结果。

      order by CASE U.[Type]
        WHEN 0 THEN 'Employee'
        WHEN 1 THEN 'COBRAParticipant'
        WHEN 2 THEN 'Disabled'
        WHEN 3 THEN 'Retiree'
        WHEN 4 THEN 'FormerEmployee'
      END;

有人可以建议我查询。

谢谢!

尝试

order by CASE U.[Type]
        WHEN 0 THEN 0
        WHEN 1 THEN 4
        WHEN 2 THEN 3
        WHEN 3 THEN 2
        WHEN 4 THEN 1
      END;

最新更新