nciaer 发表于 2020-6-30 17:49:55

mysql根据某个字段映射的值排序

需求是这样的,我有一个表的字段是title,值是主任医师,副主任医师,主治医生,副主治医生,助理医生等等,我想根据主任医师,副主任医师,主治医生,副主治医生,助理医生这个顺序排序,用order by title desc是不行的。所以需要这些值对应一些数字,然后根据数字大小排序。

直接上代码
select * from tbl_name
order by case title WHEN '主任医师' THEN 100 WHEN '副主任医师' THEN 99 WHEN '主治医师' THEN 98when '副主治医师' then 97 END desc


上面的SQL语句其实是吧主任医师的值映射成100,副主任医师的值映射成99,等等,所以最后排序就是根据100, 99, 98...排序,

完事,收工!

页: [1]
查看完整版本: mysql根据某个字段映射的值排序