Чтобы извлечь день года из даты в PostgreSQL, вы можете использовать функцию DATE_PART() с единицей ‘doy’ (день года).

Синтаксис функции DATE_PART() в Postresql:

DATE_PART(unit, source)

unit: Указывает часть даты или временной метки для извлечения (например, “год”, “месяц”, “день”, “час”, “минута”, “секунда” и т.д.).

source: Дата или временная метка, из которых извлекается указанная часть.

В нашем случае. Значения единицы измерения должны быть “дой” (день года)

Извлеките день года из даты в PostgreSQL Простой пример:

Чтобы извлечь день года из даты в PostgreSQL, мы будем использовать функцию DATE_PART().

В приведенном ниже примере мы передадим doy в качестве аргумента “единица измерения” и дату в качестве аргумента “источник”, чтобы извлечь день года из даты или datetime

SELECT DATE_PART('doy', '2024-02-24'::timestamp) AS day_of_year_part;

Результат:

Извлеките день года из текущей даты в PostgreSQL :

Этот запрос использует функцию CURRENT_DATE для получения текущей даты, а затем извлекает день года с помощью DATE_PART()

SELECT CURRENT_DATE AS current_date, DATE_PART('doy', CURRENT_DATE) AS day_of_year;

Результат:

Извлеките  день года из даты в таблице:

Мы будем использовать  приведенную ниже таблицу Student_detail для нашего примера, чтобы показать, как извлечь день года из даты в PostgreSQL

Student_detail:

В приведенной выше таблице мы будем использовать функциюDATE_PART(), которая будет принимать “doy” (день года) и столбец с именем “birthdaytime” в качестве аргумента. Который извлечет день года из столбца “birthdaytime” и сохранит в новом столбце таблицы PostgreSQL, как показано ниже

select *, DATE_PART('doy', birthdaytime::timestamp) AS day_of_year from Student_detail

таким образом, результирующаямуравьиная таблица будет иметь yearгода

Результат: