Pokud znáte PostgreSQL, možná víte, že můžete použít EXTRACT()
a DATE_PART()
funkce pro extrakci měsíce z data. Ale tyto funkce vám umožňují extrahovat pouze číslo měsíce .
Co když potřebujete název měsíce ?
Název měsíce můžete získat z data pomocí TO_CHAR()
funkce. Tato funkce vrací řetězec založený na časovém razítku a vzoru šablony, který zadáte jako argumenty.
Příklad
Zde je rychlý příklad.
SELECT TO_CHAR(TIMESTAMP '2020-12-16 10:41:35', 'Month') AS "Month";
Výsledek:
Month ----------- December
V tomto případě jsem zadal vzor šablony 'Month'
, takže to způsobilo, že se měsíc vrátil z hodnoty časového razítka.
Malá, velká a velká písmena
Měsíc můžete vrátit malými, velkými nebo velkými písmeny. Určíte, který z nich použijete pro vzor šablony (druhý argument).
Zde je příklad, který demonstruje, co tím myslím.
SELECT TO_CHAR(current_timestamp, 'month') AS "month", TO_CHAR(current_timestamp, 'Month') AS "Month", TO_CHAR(current_timestamp, 'MONTH') AS "MONTH";
Výsledek:
month | Month | MONTH -----------+-----------+----------- march | March | MARCH
Všechny výsledky jsou doplněny o 9 znaků bez ohledu na velikost písmen.
Krátký název měsíce
Můžete také určit, že výsledek bude formátován pomocí krátkého názvu měsíce.
SELECT TO_CHAR(current_timestamp, 'mon') AS "mon", TO_CHAR(current_timestamp, 'Mon') AS "Mon", TO_CHAR(current_timestamp, 'MON') AS "MON";
Výsledek:
mon | Mon | MON -----+-----+----- mar | Mar | MAR