I PostgreSQL, date_part() funktionen hämtar underfält som år, månad, timme eller minut, en del från ett datum-/tidsvärde.
Det motsvarar extract() funktion, men med en något annorlunda syntax.
Syntax
Funktionen har följande syntax:
date_part('field', source) Var:
'field'är för datumdelen som du vill hämta. Denna parameter måste vara ett strängvärde, inte ett namn. Se nedan för en lista över giltiga fältnamn.sourceär en tidsstämpel eller ett intervall som du vill att datumdelen ska hämtas från.
Exempel – Tidsstämpel
Här är ett grundläggande exempel för att visa hur man hämtar ett fält från en tidsstämpel .
SELECT date_part('hour', timestamp '2020-09-16 22:33:15'); Resultat:
22
Det här exemplet hämtar timfältet från en tidsstämpel värde.
Här är den igen, men den här gången hämtar jag årtalet.
SELECT date_part('year', timestamp '2020-09-16 22:33:15'); Resultat:
2020
Exempel – Intervall
I det här exemplet hämtar jag en datumdel från ett intervall värde.
SELECT date_part('hour', interval '5 hours 30 minutes'); Resultat:
5
I nästa exempel returnerar funktionen korrekt antalet timmar, även om jag bara anger antalet minuter.
SELECT date_part('hour', interval '120 minutes'); Resultat:
2
Räkna dock inte med denna teknik. Du kanske upptäcker att du inte alltid får det resultat du förväntar dig.
Till exempel:
SELECT date_part('hour', interval '100 minutes'); Resultat:
1
Och en annan:
SELECT date_part('minute', interval '2 hours'); Resultat:
0
Fältnamn
Det första argumentet kan vara något av följande:
centurydaydecadedowdoyepochhourisodowisoyearmicrosecondsmillenniummillisecondsminutemonthquartersecondtimezonetimezone_hourtimezone_minuteweekyear