mysql按自定義順序排序

2022-09-04 16:06:26 字數 737 閱讀 7865

order by field(排序列,value1,value2....) desc/asc

select * from sy_cd_ms_base_hospital_info order by field(grade,"三甲","三乙","三丙","二甲") asc 

圖中按照"三甲","三乙","三丙","二甲"的順序排列,沒有在排序中包含的排在了上面

select * from sy_cd_ms_base_hospital_info order by field(grade,"三甲","三乙","三丙","二甲") desc  

圖中按照"三甲","三乙","三丙","二甲"降序排列,沒有在排序中包含的排在了下面.

如果想按照排序順序公升序排列並且沒有包含在排序值中的資料排在最後(使用最多的情況)如何寫呢?

select * from sy_cd_ms_base_hospital_info order by field(grade,'二甲','三丙','三乙','三甲') desc

把想要排序的降序寫,再按降序排

mysql 按自定義的規則排序

有些時候取資料時的排序規則需要為自己的指定規則,如 1 3 2 0這種,所以需要在取資料時指定排序規則,具體方法如下 select user from user where user status in 0,1,2,3 order by field user status 1,0,2,3 這樣就可以...

MySQL 按指定字段自定義列表排序

問題描述 大家都知道,mysql 中按某欄位公升序排列的 sql 為 以 id 為例,下同 select from mytable where id in 1,7,3,5 order by id asc 降序排列的 sql 為 select from mytable where id in 1,7,...

MySQL 按指定字段自定義列表排序

大家都知道,mysql 中按某欄位公升序排列的 sql 為 以 id 為例,下同 select from mytable where id in 1,7,3,5 order by id asc 降序排列的 sql 為 select from mytable where id in 1,7,3,5 o...