Si está familiarizado con PostgreSQL, es posible que sepa que puede usar EXTRACT()
y el DATE_PART()
funciones para extraer el mes de una fecha. Pero esas funciones solo le permiten extraer el número del mes .
¿Qué sucede si necesita el mes nombre? ?
Puede obtener el nombre del mes de una fecha usando TO_CHAR()
función. Esta función devuelve una cadena basada en la marca de tiempo y el patrón de plantilla que proporciona como argumentos.
Ejemplo
Aquí hay un ejemplo rápido.
SELECT TO_CHAR(TIMESTAMP '2020-12-16 10:41:35', 'Month') AS "Month";
Resultado:
Month ----------- December
En este caso, especifiqué un patrón de plantilla de 'Month'
, por lo que esto hizo que se devolviera el mes del valor de la marca de tiempo.
Minúsculas, Mayúsculas y Mayúsculas
Puede devolver el mes en minúsculas, mayúsculas o en mayúsculas. Tú determinas cuál por el caso usas para el patrón de plantilla (segundo argumento).
Aquí hay un ejemplo para demostrar lo que quiero decir.
SELECT TO_CHAR(current_timestamp, 'month') AS "month", TO_CHAR(current_timestamp, 'Month') AS "Month", TO_CHAR(current_timestamp, 'MONTH') AS "MONTH";
Resultado:
month | Month | MONTH -----------+-----------+----------- march | March | MARCH
Todos los resultados se rellenan en blanco hasta 9 caracteres, independientemente de las mayúsculas y minúsculas que se utilicen.
Nombre de mes corto
También puede especificar que el resultado se formatee usando el nombre corto del mes.
SELECT TO_CHAR(current_timestamp, 'mon') AS "mon", TO_CHAR(current_timestamp, 'Mon') AS "Mon", TO_CHAR(current_timestamp, 'MON') AS "MON";
Resultado:
mon | Mon | MON -----+-----+----- mar | Mar | MAR