在sql做order by排序时,又让特定的数据排在最前面

有些特殊业务需求,需要将数据做order by排序时,又要求当name等于某某的时候必须排在前面,解决办法如下:

select * from table ORDER BY  case when column='某某' then 0  else 1 end asc,id asc

上面这段sql就是即按照了id排序,又将列值等于某某的数据提在了最前面。

当column ='某某',就是将column为'某某'的数据提在了最前面;

当column!='某某',就是将column为'某某'的数据移到了最后面;

支持mysql,亲测!

正在加载评论...