Archives of the TeradataForum
Message Posted: Mon, 22 Feb 2010 @ 20:17:52 GMT
<-- Anonymously Posted: Monday, February 22, 2010 11:40 -->
We have used calculations of the ilk
(DATE - DATE_OF_BIRTH) YEAR(4)
to calculate the age (of a customer) in years.
We are convinced that this calculation took into account the day and month of the current year and would therefore return the AGE based on whether the birthday had already occurred in the current year or not, i.e it would always return the actual age of the customer as at the day the query was executed.
We have now found that this is no longer the case and we are assuming that this change occurred when we upgraded to TD12. Unfortunately we don't have access to a V2R6 box to prove that the calculation used to work in the way we think it did.
Does anyone know if I'm mistaken about previous release behaviour or whether this is indeed a change in the Teradata calculation between releases and if so, is it a bug or an intentional change ?
The following demonstrates the issue, I would expect to see a mix of 1's and 0's in the result set, but the query returns all 1's.
sel cdate ,(date-cdate) year(4) from Sys_Calendar.caldates where cdate between '2009-01-01' and '2009-12-31' order by 1
|Copyright 2016 - All Rights Reserved|
|Last Modified: 28 Jun 2020|