In Teradata from V2R3 onwards, it has a system calendar which is very helpful in case of the complex date comparisons like finding week number of a year or a month, or quarter of a year or month number in a particular quarter etc.

The following command shows us the week of the month, week of the year, month of a quarter and the current quarter of the year for a particular date, which is July 20, 2007.

SELECT week_of_month,

            week_of_year,

            month_of_quarter,

            quarter_of_year

FROM sys_calendar.calendar

WHERE calendar_date=1070720;

Where the string 1070720 is broken down as follows;

1st three digits represents the number of years from 1900. For example current year is 2007 and the base year is 1900 then first three digits are 2007-1900 which is 107.

2nd two digits represents month in the year.

3rd two digits represents day of the month.

To see all the attributes of the sys calendar, try the following command.

SELECT *

FROM sys_calendar.calendar

WHERE calendar_date=1070720;

Our Random Articles

More Links