mysql !!!按照某个字段排序 该字段为空排到最后边

2024-11-13 04:05:47
推荐回答(2个)
回答(1):

挖坟,答案写法没有语法、语义的问题,但是写的不够精简,不是正常的order写法。

指出两点问题:1)ifnull指成'',再与''比较,可直接写成 sortnum is null;

2)可以直接用结果为bool表达式进行排序(asc),false(0)在前,true在后。
SQL为:
select *
from table
order by sortnum is null , sortnum

回答(2):

select *
from table
order by case when ifnull(sortnum,'')='' then 0 else 1 end desc, sortnum asc

试试,我没试,应该没问题