MySQL排序时, ORDER BY将空值NULL放在最后

我们在日常工作当中;往往业务会提到一些莫名其妙的排序等规则;例如:按照某个字段升序排列,同时空值放在后面;但mysql默认升序排列时空值是在最前面;有下面几个方法:

方法一:

ORDER BY 字段 IS NULL ,字段 ;

方法二:

SELECT * FROM test ORDER BY IF(ISNULL(字段),1,0),字段 DESC;

方法三:

将空值和非空分开查询然后使用union 或者union all

 


 

posted @ 2024-05-06 16:06  逝年的我们  阅读(239)  评论(0编辑  收藏  举报