sql >> Base de Datos >  >> RDS >> Mysql

MySQL ORDEN POR condición de dos campos

El resultado de una comparación en MySQL es 0 o 1 . Entonces Stock > 0 es 1 si true . Y 1 y mayor que 0 . Así que usa

ORDER BY Stock = 0 ASC, Price DESC

o

ORDER BY Stock > 0 DESC, Price DESC

o

ORDER BY case when Stock > 0
              then 1
              else 2
         end, 
         Price DESC