sql >> Databáze >  >> RDS >> PostgreSQL

Získejte název měsíce z data v PostgreSQL

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

  1. Co je to kurzor v SQL a jak jej implementovat?

  2. Jak DIV funguje v MariaDB

  3. bbPress:Jak najít mapování příloh k jejich příslušným příspěvkům

  4. Jak vygenerovat jedinečné ID v MySQL?