Order by whichever is smaller but greater than zero

I don’t know how to do this. I need to order by the smaller of two given values unless one of the values is equal or less than zero. So if one of the values is zero, I need to sort by other value but if both values and larger than zero I need to sort by min()

Thanks

Thanks, works perfectly.

WHERE fieldname > 0
ORDER BY fieldname ASC

ORDER BY CASE
WHEN v1 < 0 THEN v2
WHEN v2 < 0 THEN v1
ELSE LEAST(v1,v2) END