In PostgreSQL kun je het extract() . gebruiken functie om het jaar uit een datum te halen.
U kunt ook de date_part() . gebruiken functie om hetzelfde te doen.
Voorbeeld 1:De functie extract()
Hier is een voorbeeld van het gebruik van de extract() functie om het jaar uit een datum te halen.
SELECT extract(
year from date '1974-12-16'
) AS "Year";
Resultaat:
Year ------ 1974
Hier is nog een voorbeeld waarbij de huidige tijdstempel wordt gebruikt.
SELECT extract(
year from current_timestamp
) AS "Year";
Resultaat:
Year ------ 2020
Voorbeeld 2:De functie date_part()
Hier is een voorbeeld van het gebruik van de date_part() functie in plaats daarvan.
SELECT date_part(
'year', date '1974-12-16'
) AS "Year";
Resultaat:
Year ------ 1974
Let op de iets andere syntaxis. Ook het 'year' parameter moet een tekenreekswaarde zijn (d.w.z. tussen enkele aanhalingstekens).
Voorbeeld 3:ISO-jaar
U heeft de mogelijkheid om het ISO 8601 weeknummeringsjaar op te geven.
Elk ISO 8601-weeknummerjaar begint met de maandag van de week waarin 4 januari valt, dus begin januari of eind december kan het ISO-jaar verschillen van het Gregoriaanse jaar (afhankelijk van het jaar in kwestie).
Hier is een voorbeeld dat dit aantoont.
SELECT
extract(
isoyear from date '2024-12-29'
) AS "2024-12-29",
extract(
isoyear from date '2024-12-30'
) AS "2024-12-30";
Resultaat:
2024-12-29 | 2024-12-30
------------+------------
2024 | 2025
Beide datums vallen dus onder 2024 in de Gregoriaanse kalender, maar ze vallen onder een ander ISO-jaar.
De date_part() functie accepteert ook 'isoyear' als argument.