PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

PostgreSQL :trier par colonne, avec une valeur spécifique NON-NULL LAST

Postgres autorise boolean valeurs dans le ORDER BY clause, voici donc votre generalised 'X LAST' :

ORDER BY (my_column = 'X')

L'expression est évaluée à boolean , les valeurs résultantes sont triées comme suit :

FALSE (0)
TRUE (1)
NULL

Puisque nous traitons avec des valeurs non nulles, c'est tout ce dont nous avons besoin. Voici votre one-liner :

...
ORDER BY (zone = 'Future'), zone, status;

Connexe :