Le résultat d'une comparaison dans MySQL est 0
ou 1
. Donc Stock > 0
est 1
si true
. Et 1
et supérieur à 0
. Donc soit utiliser
ORDER BY Stock = 0 ASC, Price DESC
ou
ORDER BY Stock > 0 DESC, Price DESC
ou
ORDER BY case when Stock > 0
then 1
else 2
end,
Price DESC