Ако знаете това salaryplus
винаги ще бъде по-голямо от salaryminus
, тогава можете да направите
order by coalesce(salaryplus, salaryminus, 0)
coalesce
ще върне първата стойност, която не е нула или (в този пример) 0, ако и двете стойности са нулеви.
В противен случай направете нещо подобно:
order by greatest(ifnull(salaryminus,0), ifnull(salaryplus,0))
Това ще третира и двете salaryminus
и salaryplus
като 0, ако са нулеви, и ще бъдат подредени по по-голямото от двете.