http://avatraxiom.livejournal.com/85796.html
>>Subtracting six months from June 29, 2007 gives you...February 29, 2007, a day that never existed. In fact, because it never existed, Oracle throws an error if you do that. Other databases just give you February 28 (or March 1 if you're adding, I think).
и пр. Правда что ли?