【发布时间】:2020-02-05 12:01:00
【问题描述】:
我有一个关于时间和时间计算的问题。
我创建了一个具有以下维度的 DimDate 表:
Date Day DaySuffix Weekday WeekDayName IsWeekend IsHoliday
2000-01-01 1 st 7 Saturday 1 1
我正在寻找一种解决方案,它告诉 SQL 包含自创建以来超过 4 个工作日(不包括周末和节假日)创建的人员。但我怀疑如何将 DimDate 合并到下面的等式中:
我只知道如何返回 4 天,但不排除周末和节假日。
,case
when Person = 1 and CreationDate < DATEADD(day, -4, GETDATE())
then 1
else 0
end as 'Missing'
【问题讨论】:
-
如果今天是星期二,第一个工作日是星期一,是“4 个工作日前”星期五(即星期六/星期日计数到 4,星期五是工作日)还是星期三(星期六/sun 不计入4个工作日,4个工作日分别是周一、周五、周四和周三)?当天算不算?
标签: sql sql-server date case