我正在构建基于工作日分析的产品。基本上,对于不同的产品,数据将在一周中的不同日期填充到表中,并且我试图查看数据填充日期是否遵循特定模式,如果是,我想要COUNT连续天数在这种模式。
例如:
产品ABCD在过去六个月中每周(周三,周五和周五)(工作日的第2,4和6天)都有数据填充。
我想知道,数据已经连续多少天(星期一,星期三和星期五)。例如,如果在过去4周内,我们每周一,周三和周五都有更新,连续'天数'将是12(每周三天* 4)。
对于工作日数据(将每个产品与工作日数字与条目相匹配),我对这些数据进行了整形(如果需要脚本,我也可以发送,但是,我的大部分数据仍然是原始的,所以我需要帮助塑造它):
这样的事情如何让你进入球场:
select Year,WeekNumber --Both DimDate values
, Count(*) Ct
from dimdate DD -- This is table that has every date in it
join [Your Table] on DD.Date = [Your Table].LoadDate
where DD.DayNumberOfWeek in (2,4,6)
group by Year,WeekNumber
order by Year,WeekNumber
这将使您按周计算(您希望看到3)在周一,周三或周五发生负载的情况。