如果您知道该值salaryplus
始终大于salaryminus
,则可以执行
order by coalesce(salaryplus, salaryminus, 0)
coalesce
将返回不为null的第一个值;如果两个值均为null,则返回0(在此示例中)。
否则,请执行以下操作:
order by greatest(ifnull(salaryminus,0), ifnull(salaryplus,0))
这将同时治疗salaryminus
和salaryplus
为0,如果是空的,将被两个较大的订单。