Difference in Date between Oracle and Teradata Difference in Date between Oracle and Teradata oracle oracle

Difference in Date between Oracle and Teradata


It's simple, Oracle is wrong :-)

select   date '1582-10-04'+1,    date '1582-10-05'+1,    date '1582-10-14'+1,    date '1582-10-15'+1 from dual;|             DATE'1582-10-04'+1 |             DATE'1582-10-05'+1 |             DATE'1582-10-14'+1 |             DATE'1582-10-15'+1 ||--------------------------------|--------------------------------|--------------------------------|--------------------------------|| October, 15 1582 00:00:00+0000 | October, 16 1582 00:00:00+0000 | October, 25 1582 00:00:00+0000 | October, 16 1582 00:00:00+0000 |

For date differences Teradata uses a Standard SQL calendar implementation, which is a proleptic gregorian calendar, while Oracle uses a proleptic Julian calendar (even if NLS calls it GREGORIAN).

See the paper from Gulutzan/Pelzer: http://www.orafaq.com/papers/dates_o.doc