【发布时间】:2019-08-02 17:48:24
【问题描述】:
我需要找到一个日期后 11 个工作日的日期。
我没有日期表。要求一个,一个很长的交货时间。 使用 CTE 生成具有日期键的结果,如果是工作日则为 1,如果是假日则为 1,否则为 0。将这些结果放入表变量中,现在 Business_Day 是(工作日-假日)。已经发生了很多谷歌搜索。
select dt.Datekey,
(dt.Weekdaycount - dt.HolidayCount) as Business_day
from @DateTable dt[enter image description here][1]
更新,我已经在 Excel 中弄清楚了。运行工作日计数,一列工作日计数 + 11,然后通过 Vlookup 查找 +11 日期。现在我该如何在 SQL 中做到这一点?
这样的结果 日期键 2019-01-01 营业日 0 日期键 2019-01-02 营业日 1
【问题讨论】:
-
你检查了我的答案,对你有用吗?
-
您好 Ali,第一次感谢您尝试解决这个问题。您提供的解决方案有效,但如果您更改日期,则它不准确。基本上我创建了一个日期表,然后将它加入到事务表中。 '加入 [dw_dev].[dbo].[tmp_ZND_BusDay] BD ON Left (D.DTINITIATE,10) = Left ([FullDate], 10) WHERE ( CONVERT(date, D.DTRESOLVED)
-
如果您发现您的解决方案很棒,那么我认为您需要添加您的答案并将其标记为答案(自我回答)。
-
谢谢阿里,我是新手 :-) 会的。
标签: tsql