Ето два начина за преобразуване на даден юлиански ден в неговата стойност на датата в PostgreSQL.
Първият метод директно въвежда юлианския ден в типа данни за дата.
Вторият метод използва to_date()
функция, за да върне същия резултат.
Юлиански ден е броят на дните от понеделник, 1 януари 4713 г. пр. н. е. по пролептичния юлиански календар, който е 24 ноември 4714 г. пр. н. е. в пролептичния григориански календар.
Директно въвеждане
PostgreSQL всъщност използва юлиански дати вътрешно за всички изчисления на дата/час. Следователно можем да използваме J
префикс заедно с ::date
за да използвате юлианския ден като директен вход в типа данни за дата.
Ето пример за демонстрация.
SELECT 'J2459569'::date;
Резултат:
2021-12-20
Тук юлианският ден е 2459569, което представлява 2021-12-20.
Функцията to_date()
Алтернативен, малко по-малко сбит метод е да използвате to_date()
функция.
SELECT to_date('2459569', 'J');
Резултат:
2021-12-20
Същият резултат.