How do you obtain the maximum possible date in Oracle?

前端 未结 5 1023
傲寒
傲寒 2020-12-10 11:25

Is there a function built into Oracle that will return the highest possible date that may be inserted into a date field?

相关标签:
5条回答
  • 2020-12-10 11:29

    Another ways, just for fun:

    SELECT to_date(5373484, 'J') + (1 - 1/24/60/60)
      FROM dual;
    
    SELECT date '9999-12-31' + (1 - 1/24/60/60) 
      FROM dual;
    
    0 讨论(0)
  • 2020-12-10 11:30
    SELECT  TO_DATE('31.12.9999 23:59:59', 'dd.mm.yyyy hh24:mi:ss')
    FROM    dual
    

    Note that minimal date is much more simple:

    SELECT  TO_DATE(1, 'J')
    FROM    dual
    
    0 讨论(0)
  • 2020-12-10 11:41

    I do not know of a function but according to this article:

    Oracle 7: from January 1, 4712 BC to December 31, 4712 AD.
    Oracle 8: from January 1, 4712 BC to December 31, 9999 AD.
    Oracle 9: from January 1, 4712 BC to December 31, 9999 AD.
    PL/SQL: from January 1, 4712 BC to December 31, 9999 AD.

    0 讨论(0)
  • 2020-12-10 11:45

    From the 11g docs:

    Oracle Database can store dates in the Julian era, ranging from January 1, 4712 BCE through December 31, 9999 CE (Common Era, or 'AD').

    http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/datatype.htm#i1847

    0 讨论(0)
  • 2020-12-10 11:51

    In Julian format (JDDD) the max Oracle date is 2086307365.

    0 讨论(0)
提交回复
热议问题