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

Dans Postgresql, comment trier par date tout en conservant le format de date personnalisé

La solution correcte et simple est :

SELECT to_char(b.foo,'dd/MM/yyyy') as foo, b.bar
FROM   baz b
ORDER  BY b.foo;

La colonne de date formatée foo est une toute nouvelle colonne pour le planificateur de requêtes, qui entre en conflit avec la colonne de table foo . Dans les clauses ORDER BY et GROUP BY, les noms des colonnes de sortie ont priorité sur les colonnes de table. Le nom non qualifié foo ferait référence à la colonne de sortie.

Pour utiliser la colonne de table d'origine dans la clause ORDER BY, il suffit de qualifier la colonne de table .

J'ai qualifié de table toutes les colonnes de table pour clarifier mon point. Ne serait requis que dans la clause ORDER BY dans ce cas. Alias ​​de table b est juste pour plus de commodité.