W PostgreSQL możesz użyć extract()
funkcja, aby uzyskać rok od daty.
Możesz także użyć date_part()
funkcja, aby zrobić to samo.
Przykład 1:Funkcja extract()
Oto przykład użycia extract()
funkcja wyodrębniania roku z daty.
SELECT extract( year from date '1974-12-16' ) AS "Year";
Wynik:
Year ------ 1974
Oto kolejny przykład z wykorzystaniem aktualnego znacznika czasu.
SELECT extract( year from current_timestamp ) AS "Year";
Wynik:
Year ------ 2020
Przykład 2:Funkcja date_part()
Oto przykład użycia date_part()
zamiast tego.
SELECT date_part( 'year', date '1974-12-16' ) AS "Year";
Wynik:
Year ------ 1974
Zwróć uwagę na nieco inną składnię. Również 'year'
parametr musi być wartością ciągu (tzn. jest ujęty w pojedyncze cudzysłowy).
Przykład 3:Rok ISO
Masz możliwość określenia roku numeracji tygodni ISO 8601.
Każdy rok numerowania tygodni ISO 8601 zaczyna się od poniedziałku tygodnia zawierającego 4 stycznia, więc na początku stycznia lub pod koniec grudnia rok ISO może różnić się od roku gregoriańskiego (w zależności od danego roku).
Oto przykład, który to pokazuje.
SELECT extract( isoyear from date '2024-12-29' ) AS "2024-12-29", extract( isoyear from date '2024-12-30' ) AS "2024-12-30";
Wynik:
2024-12-29 | 2024-12-30 ------------+------------ 2024 | 2025
Tak więc obie daty przypadają w kalendarzu gregoriańskim pod rok 2024, ale przypadają na inny rok ISO.
date_part()
funkcja akceptuje również 'isoyear'
jako argument.