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

Převeďte název měsíce na číslo měsíce v PostgreSQL

V PostgreSQL, pokud již máte název měsíce , ale chcete tento název převést na číslo měsíce , můžete to udělat pomocí EXTRACT() funkce.

Příklad 1:Celý název měsíce

Zde je základní příklad převodu názvu měsíce na odpovídající číslo měsíce.

SELECT EXTRACT(MONTH FROM TO_DATE('December', 'Month')) AS "Month Number";

Výsledek:

 Month Number 
--------------
           12 

Příklad 2:Krátký název měsíce

Funguje také na krátké názvy měsíců. V tomto případě stačí zkrátit řetězec šablony z 'Month' do 'Mon' (druhý argument funkce TO_DATE() funkce).

SELECT EXTRACT(MONTH FROM TO_DATE('Dec', 'Mon')) AS "Month Number";

Výsledek:

 Month Number 
--------------
           12

Příklad 3:Delší data

Funguje to také, když zadáte delší datum (nejen název měsíce).

SELECT EXTRACT(
    MONTH FROM TO_DATE('December 20, 2020', 'Month')
    ) AS "Month Number";

Výsledek:

 Month Number 
--------------
           12

Příklad 4:Použití časového razítka

Zde je příklad použití TO_TIMESTAMP() místo TO_DATE() .

SELECT EXTRACT(MONTH FROM TO_TIMESTAMP('Dec 2020', 'Mon')) AS "Month Number";

Výsledek:

 Month Number 
--------------
           12

  1. Převzít hodnotu z FieldA, odeslat do funkce db, vrátit hodnotu do FieldB

  2. Odkaz na tabulku v jiném schématu s vynecháním názvu schématu

  3. Jak zahrnout proměnnou PHP do příkazu MySQL

  4. Vytvořte proměnnou tabulky v MySQL