Om du vet att salaryplus
kommer alltid att vara större än salaryminus
, då kan du göra
order by coalesce(salaryplus, salaryminus, 0)
coalesce
returnerar det första värdet som inte är null, eller (i detta exempel) 0, om båda värdena är null.
Annars gör du något så här:
order by greatest(ifnull(salaryminus,0), ifnull(salaryplus,0))
Detta kommer att behandla både salaryminus
och salaryplus
som 0 om de är null, och kommer att sorteras efter den största av de två.