Je dois utiliser un ORDER BY
sur une table mais garder des rangées spéciales sur le dessus. Les lignes qui ont name='developer'
par exemple.Postgresql Commande spéciale BY
1
A
Répondre
4
ORDER BY CASE WHEN name = 'developer' THEN '0' ELSE name END
1
Quelque chose comme ceci pourrait fonctionner pour vous.
SELECT * FROM table ORDER BY CASE WHEN name = 'developer' THEN 0 ELSE 1 END, name
2
Vous pouvez également faire ORDER BY sans l'utilisation d'un CAS:
ORDER BY
name = 'developer' DESC,
name ASC;
On évite ainsi également l'hypothèse sous-jacente sur la nature de la 'name's que la réponse acceptée a oublié de noter. –