【发布时间】:2015-02-22 01:53:19
【问题描述】:
这是我的数据;
table A.pickup_date 是一个日期列
表 A.biz_days 是我要加到 A.pickup_date 的工作日
表 B.date
表 B.is_weekend(是或否)
表 B.is_holiday(是或否)
基本上从表 B 中,我知道每个日期,如果任何日期是工作日或不是。现在我想在 A.pickup_date 中添加 A.business_days 后的确切日期在表 A 中的第三列。
谁能为此提供case when 语句或procedure 语句?不幸的是,我们不允许在 Teradata 中编写自己的函数。
【问题讨论】:
-
你试过什么?您是否有示例代码向我们展示您遇到的问题?
-
我只是不知道如何在这里编写一个循环,可能在一个过程中将 python 逻辑实现为 def date_by_adding_business_days(from_date, add_days): business_days_to_add = add_days current_date = from_date while business_days_to_add > 0: current_date += datetime.timedelta(days=1) weekday = current_date.weekday() if weekday >= 5: # sunday = 6 continue business_days_to_add -= 1 return current_date
标签: loops date teradata procedure