В PostgreSQL можете да използвате extract()
функция за получаване на годината от дата.
Можете също да използвате date_part()
функция, за да направи същото.
Пример 1:Функцията extract()
Ето пример за използване на extract()
функция за извличане на годината от дата.
SELECT extract( year from date '1974-12-16' ) AS "Year";
Резултат:
Year ------ 1974
Ето още един пример за използване на текущата времева марка.
SELECT extract( year from current_timestamp ) AS "Year";
Резултат:
Year ------ 2020
Пример 2:Функцията date_part()
Ето пример за използване на date_part()
функция вместо това.
SELECT date_part( 'year', date '1974-12-16' ) AS "Year";
Резултат:
Year ------ 1974
Обърнете внимание на малко по-различния синтаксис. Също и 'year'
параметърът трябва да е низова стойност (т.е. да е затворен в единични кавички).
Пример 3:ISO година
Имате възможност да посочите годината за номериране на седмица по ISO 8601.
Всяка година за номериране на седмица по ISO 8601 започва с понеделник от седмицата, съдържащ 4 януари, така че в началото на януари или края на декември годината по ISO може да е различна от григорианската година (в зависимост от въпросната година).
Ето пример, който демонстрира това.
SELECT extract( isoyear from date '2024-12-29' ) AS "2024-12-29", extract( isoyear from date '2024-12-30' ) AS "2024-12-30";
Резултат:
2024-12-29 | 2024-12-30 ------------+------------ 2024 | 2025
Така че и двете дати попадат под 2024 г. в григорианския календар, но попадат под различна година по ISO.
date_part()
функцията също така приема 'isoyear'
като аргумент.