Teradata输入日期超出业务日历边界

时间:2016-09-07 09:21:22

标签: sql teradata

给出一张表:

Table : Dates
INSERTION_DATE
10/12/2016
14/10/2106

当我运行一个查询,提取每个日期的年份周数时:

SELECT TD_SYSFNLIB.WEEKNUMBER_OF_YEAR(INSERTION_DATE) FROM DB.DATES

我得到了这个例外:

SELECT Failes [9134] Input date is out of business calendar boundaries.

这是因为Teradata似乎不喜欢在未来的日期使用这个库,(14/10/2106)但是我想为我的用例做一个解决方法,给出给定的一年的星期数日期。

由于

3 个答案:

答案 0 :(得分:1)

Teradata中的日期功能与业务日历无关,可以为您提供更大的灵活性。它们在TD 13.x中引入并在TD 14.x中重命名。它们以TD_开头,在您的实例中,TD_Week_Number_Of_Year成为候选人。

商家日历仅限于19/1/19至12/31/2100之间的日期。

答案 1 :(得分:0)

@will你可以试试以下:

select to_char(INSERTION_DATE,'iyyyiw')

取自@ dnoeth的帖子。

https://forums.teradata.com/forum/database/getting-week-of-the-year-from-a-date

答案 2 :(得分:-1)

该函数需要将日期作为参数。默认情况下,提到的值不会转换为日期。 尝试显式转换(或更改表org.apache.jackrabbit.api.jsr283.security

中的类型
dates