Comment obtenez-vous la date maximum possible dans Oracle?
Question
Y at-il une fonction intégrée dans Oracle qui renverra le plus rapidement possible qui peut être insérée dans un champ de date?
La solution
SELECT TO_DATE('31.12.9999 23:59:59', 'dd.mm.yyyy hh24:mi:ss')
FROM dual
Notez que la date minimale est beaucoup plus simple:
SELECT TO_DATE(1, 'J')
FROM dual
Autres conseils
A partir de 11g docs:
Base de données Oracle peut stocker des dates à l'époque Julian, allant du 1er Janvier, 4712 BCE jusqu'au 31 Décembre, 9999 CE (ère, ou 'AD').
http://download.oracle. com / docs / cd / B28359_01 / server.111 / b28318 / datatype.htm # i1847
Je ne sais pas d'une fonction, mais selon cet article :
Oracle 7:. à partir du 1er Janvier, 4712 BC au 31 Décembre, 4712 AD
Oracle 8. à partir du 1er Janvier, 4712 BC au 31 Décembre, 9999 AD
Oracle 9:. à partir du 1er Janvier, 4712 BC au 31 Décembre, 9999 AD
PL / SQL: à partir du 1er Janvier, 4712 BC au 31 Décembre, 9999.
Une autre façon, juste pour le plaisir:
SELECT to_date(5373484, 'J') + (1 - 1/24/60/60)
FROM dual;
SELECT date '9999-12-31' + (1 - 1/24/60/60)
FROM dual;
En format Julian (JDDD) la date max Oracle est 2086307365.