硬汉工作室

搜索
热搜: 活动 交友 discuz

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

[复制链接]
发表于 2020-6-30 17:49:55 | 显示全部楼层 |阅读模式
需求是这样的,我有一个表的字段是title,值是主任医师,副主任医师,主治医生,副主治医生,助理医生等等,我想根据主任医师,副主任医师,主治医生,副主治医生,助理医生这个顺序排序,用order by title desc是不行的。所以需要这些值对应一些数字,然后根据数字大小排序。

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


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

完事,收工!

有关PHP系统、Discuz或网站等各种问题,可以联系QQ1069971363寻求付费支持
Discuz插件商店:http://addon.dismall.com/?@56030.developer
回复

使用道具 举报

QQ|Archiver|手机版|小黑屋|硬汉工作室 ( 冀ICP备13021567号-9 )

GMT+8, 2024-4-20 19:55 , Processed in 0.052864 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表