sql >> Base de Datos >  >> RDS >> PostgreSQL

En Postgresql, cómo ordenar por fecha manteniendo el formato de fecha personalizado

La solución adecuada y simple es:

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

La columna de fecha formateada foo es una columna completamente nueva para el planificador de consultas, que entra en conflicto con la columna de la tabla foo . En las cláusulas ORDER BY y GROUP BY, los nombres de las columnas de salida tienen prioridad sobre las columnas de la tabla. El nombre no calificado foo se referiría a la columna de salida.

Para usar la columna de la tabla original en la cláusula ORDER BY, simplemente califique la columna con la tabla .

Califiqué todas las columnas de la tabla para aclarar mi punto. Solo se requeriría en la cláusula ORDER BY en este caso. Alias ​​de tabla b es solo por conveniencia.