I PostgreSQL kan du bruge extract()
funktion for at få året fra en dato.
Du kan også bruge date_part()
funktion til at gøre det samme.
Eksempel 1:Extrakt()-funktionen
Her er et eksempel på brug af extract()
funktion til at udtrække året fra en dato.
SELECT extract( year from date '1974-12-16' ) AS "Year";
Resultat:
Year ------ 1974
Her er endnu et eksempel, der bruger det aktuelle tidsstempel.
SELECT extract( year from current_timestamp ) AS "Year";
Resultat:
Year ------ 2020
Eksempel 2:Date_part()-funktionen
Her er et eksempel på brug af date_part()
funktion i stedet for.
SELECT date_part( 'year', date '1974-12-16' ) AS "Year";
Resultat:
Year ------ 1974
Bemærk den lidt anderledes syntaks. Også 'year'
parameter skal være en strengværdi (dvs. den er omgivet af enkelte anførselstegn).
Eksempel 3:ISO-år
Du har mulighed for at angive ISO 8601-ugenummereringsåret.
Hvert ISO 8601-ugenummereringsår begynder med mandagen i ugen, der indeholder den 4. januar, så i begyndelsen af januar eller slutningen af december kan ISO-året være anderledes end det gregorianske år (afhængigt af det pågældende år).
Her er et eksempel, der demonstrerer dette.
SELECT extract( isoyear from date '2024-12-29' ) AS "2024-12-29", extract( isoyear from date '2024-12-30' ) AS "2024-12-30";
Resultat:
2024-12-29 | 2024-12-30 ------------+------------ 2024 | 2025
Så begge datoer falder under 2024 i den gregorianske kalender, men de falder ind under et andet ISO-år.
date_part()
funktion accepterer også 'isoyear'
som et argument.